Heim > Artikel > Backend-Entwicklung > Wie zeige ich Beschriftungen beider Achsen in einer einzigen Legende an, wenn ich „twinx()“ in Matplotlib verwende?
Hinzufügen einer Sekundärachsenlegende zu einem Twinx()-Plot
In einem Plot mit zwei y-Achsen, der mit twinx() erstellt wurde, Hinzufügen Den Zeilen Beschriftungen hinzuzufügen und sie in einer Legende anzuzeigen, kann eine Herausforderung sein. Zunächst erscheinen möglicherweise nur die Beschriftungen der Primärachse in der Legende.
Um dieses Problem zu beheben, fügen Sie eine Legende für die Sekundärachse hinzu, indem Sie die folgende Zeile verwenden:
ax2.legend(loc=0)
Dies führt zu zwei separate Legenden, eine für jede Achse.
Wenn Sie jedoch alle Beschriftungen in einer einzigen Legende haben möchten, befolgen Sie diese Schritte:
Definieren Sie beide Achsen und zeichnen Sie die Linien :
ax = fig.add_subplot(111) ax2 = ax.twinx() lns1 = ax.plot(...) lns2 = ax.plot(...) lns3 = ax2.plot(...)
Definieren Sie die Legendengriffe und Beschriftungen:
lns = lns1 + lns2 + lns3 labs = [l.get_label() for l in lns]
Fügen Sie die Legende hinzu mit:
ax.legend(lns, labs, loc=0)
Bei diesem Ansatz werden alle Achsenbeschriftungen in einer einzigen Legende angezeigt.
Das obige ist der detaillierte Inhalt vonWie zeige ich Beschriftungen beider Achsen in einer einzigen Legende an, wenn ich „twinx()“ in Matplotlib verwende?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!