Matplotlib est une puissante bibliothèque Python pour créer des visualisations. Lorsque l’on travaille avec plusieurs sous-graphiques, un étiquetage clair est essentiel. Cet article explore des méthodes efficaces pour ajouter des titres à vos sous-graphiques Matplotlib.
Table des matières
- Utiliser
set_title()
- Utiliser
title.set_text()
- Utiliser
plt.gca()
- Bonnes pratiques et considérations
Ajouter des titres de sous-graphiques avec set_title()
L’approche la plus simple utilise la méthode set_title()
directement sur l’objet sous-graphique. Cette méthode est intuitive et très lisible.
import matplotlib.pyplot as plt
import numpy as np
# Données d'exemple
x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)
# Créer des sous-graphiques
fig, axes = plt.subplots(nrows=2, ncols=1, figsize=(8, 6))
# Ajouter des titres
axes[0].plot(x, y1)
axes[0].set_title('Onde sinusoïdale')
axes[1].plot(x, y2)
axes[1].set_title('Onde cosinusoïdale')
# Ajuster la disposition
plt.tight_layout()
plt.show()
Définir des titres de sous-graphiques avec title.set_text()
Alternativement, vous pouvez utiliser l’attribut title
de l’objet sous-graphique. La méthode set_text()
de cet attribut modifie le texte du titre. Fonctionnellement équivalent à set_title()
, il offre une syntaxe légèrement différente.
import matplotlib.pyplot as plt
import numpy as np
# Données d'exemple
x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)
# Créer des sous-graphiques
fig, axes = plt.subplots(nrows=2, ncols=1, figsize=(8, 6))
# Ajouter des titres
axes[0].plot(x, y1)
axes[0].title.set_text('Onde sinusoïdale')
axes[1].plot(x, y2)
axes[1].title.set_text('Onde cosinusoïdale')
plt.tight_layout()
plt.show()
Utiliser plt.gca()
plt.gca()
(obtenir les axes actuels) renvoie les axes actuellement actifs. Bien utile pour les sous-graphiques simples ou lorsque les axes actifs sont connus, il est moins clair et maintenable pour plusieurs sous-graphiques. Il est généralement préférable de référencer directement les objets sous-graphiques pour des raisons de lisibilité.
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 100)
y1 = np.sin(x)
plt.figure(figsize=(6, 4))
plt.plot(x, y1)
plt.gca().set_title('Onde sinusoïdale utilisant gca()')
plt.show()
Bonnes pratiques et considérations
Pour la clarté et la maintenabilité, surtout avec plusieurs sous-graphiques, il est recommandé d’utiliser directement axes[i].set_title()
ou axes[i].title.set_text()
. plt.gca()
doit être utilisé avec parcimonie. Utilisez toujours plt.tight_layout()
pour éviter les chevauchements d’éléments. Envisagez d’utiliser des titres descriptifs qui reflètent avec précision les données présentées dans chaque sous-graphique.