"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment ajouter des étiquettes pour les axes primaires et secondaires dans une légende avec TwinX ?

Comment ajouter des étiquettes pour les axes primaires et secondaires dans une légende avec TwinX ?

Publié le 2024-11-08
Parcourir:817

How to Add Labels for Both Primary and Secondary Axes in a Legend with TwinX?

Affichage de la légende avec axe secondaire dans TwinX

Dans un tracé avec plusieurs axes Y à l'aide de twinx(), en ajoutant des étiquettes à chaque ligne et les afficher dans une légende peut présenter un défi. En règle générale, seules les étiquettes de l'axe principal apparaissent dans la légende.

Considérons l'exemple suivant où les étiquettes de deux lignes d'axe principal et d'une ligne d'axe secondaire sont définies :

fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(time, Swdown, '-', label = 'Swdown')
ax.plot(time, Rn, '-', label = 'Rn')
ax2 = ax.twinx()
ax2.plot(time, temp, '-r', label = 'temp')
ax.legend(loc=0)

Dans ce cas, la légende affiche uniquement les étiquettes 'Swdown' et 'Rn'. Pour inclure l'étiquette « temp » pour l'axe secondaire, deux approches peuvent être utilisées :

Légendes séparées

Une option consiste à créer une deuxième légende spécifiquement pour l'axe secondaire. axe. Ceci peut être réalisé en ajoutant la ligne suivante :

ax2.legend(loc=0)

Cela entraînera deux légendes distinctes, une pour chaque axe.

Légende combinée

Pour une seule légende combinée, suivez les étapes suivantes :

  1. Créez une liste de toutes les lignes (des deux axes) que vous souhaitez apparaître dans la légende :
lns = lns1 lns2 lns3
  1. Extraire les étiquettes de chaque ligne :
labs = [l.get_label() for l in lns]
  1. Utilisez la fonction legend() sur l'axe principal (ax), en transmettant la liste de lignes combinée et la liste d'étiquettes :
ax.legend(lns, labs, loc=0)

En suivant ces instructions, vous pouvez afficher efficacement toutes les étiquettes de ligne dans une seule légende, qu'elles appartiennent à la axes primaires ou secondaires.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3