Création manuelle d'une légende dans Matplotlib
Lorsque vous travaillez avec de grands ensembles de données dans matplotlib, l'ajout manuel d'éléments à la légende avec des couleurs et des étiquettes distinctes peut être une technique utile. Cela évite les doublons qui peuvent survenir lors de l'inclusion automatique de données dans le tracé.
Approche originale
L'approche originale a tenté d'utiliser le code suivant :
ax2.legend(self.labels, colorList[:len(self.labels)]) plt.legend()
où self.labels est le nombre d'étiquettes de légende souhaitées et colorList est un sous-ensemble des couleurs utilisées dans le tracé. Cependant, cette méthode n'a généré aucune entrée dans la légende.
Solution
Pour créer manuellement une légende, le Guide des légendes dans la documentation matplotlib propose une solution. Il s'agit de créer un artiste spécial, appelé Patch, qui peut être utilisé comme poignée dans la légende.
import matplotlib.patches as mpatches import matplotlib.pyplot as plt # Create a red patch red_patch = mpatches.Patch(color='red', label='The red data')
Ce patch représente désormais les données rouges et peut être directement ajouté à la légende.
plt.legend(handles=[red_patch])
Ajout de plusieurs patchs
Pour ajouter plusieurs couleurs et étiquettes, la même technique peut être appliquée en créant des patchs supplémentaires.
blue_patch = mpatches.Patch(color='blue', label='The blue data') plt.legend(handles=[red_patch, blue_patch])
Cela permettra donne lieu à une légende avec deux entrées, une pour chaque patch.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!