Data Visualization

Maîtriser les Légendes Matplotlib : Guide Complet de la Taille des Polices

Spread the love

Matplotlib est une puissante bibliothèque Python pour créer des visualisations. Les légendes sont essentielles pour la clarté, et le contrôle de leur apparence, notamment la taille de la police, est crucial pour une communication efficace. Cet article explore plusieurs méthodes pour ajuster la taille de la police des légendes dans vos graphiques Matplotlib, vous permettant de créer des graphiques visuellement attrayants et facilement compréhensibles.

Table des matières

Ajustement global de la taille de la police de la légende

Cette méthode modifie la taille de la police pour toutes les légendes de votre script. C’est idéal pour maintenir des tailles de police cohérentes sur plusieurs graphiques. Vous y parvenez en modifiant le dictionnaire rcParams.


import matplotlib.pyplot as plt
import matplotlib as mpl

# Définir la taille de la police globalement
mpl.rcParams['legend.fontsize'] = 12

# Exemple de graphique
plt.plot([1, 2, 3], [4, 5, 6], label='Ligne 1')
plt.plot([1, 2, 3], [6, 4, 2], label='Ligne 2')

# Ajouter une légende
plt.legend()
plt.show()

Cela définit la taille de la police de la légende à 12 points pour toutes les légendes suivantes de votre script. N’oubliez pas que ce changement affecte toutes les légendes globalement.

Contrôle local de la taille de la police de la légende

Pour un contrôle plus localisé, spécifiez la taille de la police directement dans la fonction plt.legend(). Cela vous permet de définir des tailles de police différentes pour les légendes individuelles.


import matplotlib.pyplot as plt

# Exemple de graphique
plt.plot([1, 2, 3], [4, 5, 6], label='Ligne 1')
plt.plot([1, 2, 3], [6, 4, 2], label='Ligne 2')

# Ajouter une légende avec la taille de police spécifiée
plt.legend(fontsize=14)
plt.show()

Cela définit la taille de la police spécifiquement pour cette légende à 14 points. Cela offre une plus grande flexibilité par rapport à la méthode rcParams globale.

Personnalisation fine de la légende

Pour un contrôle précis, accédez directement à l’objet légende et modifiez ses propriétés. Cela permet des personnalisations plus complexes que la simple taille de la police.


import matplotlib.pyplot as plt

# Exemple de graphique
plt.plot([1, 2, 3], [4, 5, 6], label='Ligne 1')
plt.plot([1, 2, 3], [6, 4, 2], label='Ligne 2')

# Ajouter une légende
legend = plt.legend()

# Accéder au texte de la légende et définir la taille de la police
for text in legend.get_texts():
    text.set_fontsize(16)

plt.show()

Cela itère sur chaque entrée de légende et définit sa taille de police individuellement. Utile pour faire varier les tailles de police au sein d’une seule légende.

Conclusion

Cet article a présenté trois méthodes pour ajuster la taille de la police des légendes Matplotlib : les paramètres globaux (rcParams), le contrôle local (plt.legend(fontsize=...)) et la manipulation fine des objets légende. Choisissez la méthode la mieux adaptée à vos besoins et à votre style de codage.

FAQ

Q : Puis-je ajuster d’autres propriétés de la police en plus de la taille ?

R : Oui, modifiez la famille de polices, le style, le poids, etc., en utilisant des techniques similaires. Explorez le module matplotlib.font_manager pour plus de détails. Par exemple, ajoutez fontweight='bold' à plt.legend() ou utilisez text.set_fontweight() dans la troisième méthode.

Q : Ma légende recouvre le graphique. Comment puis-je résoudre ce problème ?

R : Utilisez l’argument loc dans plt.legend() pour modifier l’emplacement de la légende, ou positionnez-la manuellement avec legend.set_bbox_to_anchor(). Envisagez d’ajuster la taille du graphique ou de réduire le nombre d’entrées de la légende.

Q : Mes modifications de taille de police ne sont pas appliquées. Qu’est-ce qui ne va pas ?

R : Assurez-vous que plt.show() est appelé après avoir défini la taille de la police. Des conflits avec les configurations de police ou des installations Matplotlib obsolètes peuvent également causer des problèmes. Essayez de redémarrer votre noyau ou de mettre à jour Matplotlib.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *