J'ai une figure qui contient de nombreuses sous-parcelles.
fig = plt.figure(num=None, figsize=(26, 12), dpi=80, facecolor='w', edgecolor='k')
fig.canvas.set_window_title('Window Title')
# Returns the Axes instance
ax = fig.add_subplot(311)
ax2 = fig.add_subplot(312)
ax3 = fig.add_subplot(313)
Comment ajouter des titres aux sous-parcelles?
fig.suptitle
ajoute un titre à tous les graphiques et bien que ax.set_title()
existe, ce dernier n'ajoute aucun titre à mes sous-parcelles.
Merci de votre aide.
Edit: correction d'une faute de frappe sur set_title()
. Merci Rutger Kassies
ax.title.set_text('My Plot Title')
semble fonctionner aussi.
fig = plt.figure()
ax1 = fig.add_subplot(221)
ax2 = fig.add_subplot(222)
ax3 = fig.add_subplot(223)
ax4 = fig.add_subplot(224)
ax1.title.set_text('First Plot')
ax2.title.set_text('Second Plot')
ax3.title.set_text('Third Plot')
ax4.title.set_text('Fourth Plot')
plt.show()
ax.set_title()
doit définir les titres pour des sous-parcelles distinctes:
import matplotlib.pyplot as plt
if __== "__main__":
data = [1, 2, 3, 4, 5]
fig = plt.figure()
fig.suptitle("Title for whole figure", fontsize=16)
ax = plt.subplot("211")
ax.set_title("Title for first plot")
ax.plot(data)
ax = plt.subplot("212")
ax.set_title("Title for second plot")
ax.plot(data)
plt.show()
Pouvez-vous vérifier si ce code fonctionne pour vous? Peut-être que quelque chose les écrase plus tard?
Une réponse abrégée en supposant que import matplotlib.pyplot as plt
:
plt.gca().set_title('title')
un péché:
plt.subplot(221)
plt.gca().set_title('title')
plt.subplot(222)
etc...
Il n’ya alors pas besoin de variables superflues.
Si vous voulez raccourcir, vous pouvez écrire:
import matplolib.pyplot as plt
for i in range(4):
plt.subplot(2,2,i+1).set_title('Subplot n°{}' .format(i+1))
plt.show()
Cela le rend peut-être moins clair mais vous n'avez pas besoin de plus de lignes ou de variables