Heim > Artikel > Backend-Entwicklung > Wie füge ich mit TwinX Beschriftungen für Primär- und Sekundärachsen in einer Legende hinzu?
Legendenanzeige mit Sekundärachse in TwinX
In einem Plot mit mehreren Y-Achsen mit twinx(), Hinzufügen von Beschriftungen zu jeder Zeile und Sie in einer Legende darzustellen, kann eine Herausforderung darstellen. Normalerweise erscheinen in der Legende nur Beschriftungen der Primärachse.
Betrachten Sie das folgende Beispiel, in dem Beschriftungen für zwei Primärachsenlinien und eine Sekundärachsenlinie definiert sind:
<code class="python">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)</code>
In diesem Fall , die Legende zeigt nur die Bezeichnungen „Swdown“ und „Rn“. Um die Bezeichnung „temp“ für die Sekundärachse einzuschließen, können zwei Ansätze verwendet werden:
Separate Legenden
Eine Möglichkeit besteht darin, eine zweite Legende speziell für die Sekundärachse zu erstellen Achse. Dies kann durch Hinzufügen der folgenden Zeile erreicht werden:
<code class="python">ax2.legend(loc=0)</code>
Dies führt zu zwei separaten Legenden, eine für jede Achse.
Kombinierte Legende
Für eine einzelne, kombinierte Legende führen Sie die folgenden Schritte aus:
<code class="python">lns = lns1+lns2+lns3</code>
<code class="python">labs = [l.get_label() for l in lns]</code>
<code class="python">ax.legend(lns, labs, loc=0)</code>
Durch Befolgen dieser Anweisungen können Sie effektiv alle Linienbeschriftungen in einer einzigen Legende anzeigen, unabhängig davon, ob sie zur primären oder sekundären Achse gehören.
Das obige ist der detaillierte Inhalt vonWie füge ich mit TwinX Beschriftungen für Primär- und Sekundärachsen in einer Legende hinzu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!