Maison > Article > développement back-end > Comment afficher les étiquettes des deux axes dans une seule légende lors de l'utilisation de « twinx() » dans Matplotlib ?
Ajout d'une légende d'axe secondaire à un tracé Twinx()
Dans un tracé avec deux axes Y créé à l'aide de twinx(), ajout ajouter des étiquettes aux lignes et les afficher dans une légende peut être un défi. Initialement, seules les étiquettes de l'axe principal peuvent apparaître dans la légende.
Pour résoudre ce problème, ajoutez une légende pour l'axe secondaire à l'aide de la ligne :
ax2.legend(loc=0)
Cela entraînera deux légendes distinctes, une pour chaque axe.
Cependant, si vous souhaitez que toutes les étiquettes soient sur une seule légende, suivez ces étapes :
Définissez les deux axes et tracez les lignes :
ax = fig.add_subplot(111) ax2 = ax.twinx() lns1 = ax.plot(...) lns2 = ax.plot(...) lns3 = ax2.plot(...)
Définissez les poignées et les étiquettes de légende :
lns = lns1 + lns2 + lns3 labs = [l.get_label() for l in lns]
Ajoutez la légende en utilisant :
ax.legend(lns, labs, loc=0)
Cette approche affichera toutes les étiquettes des axes dans une seule légende.
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!