Wie füge ich in Matplotlib manuell Legenden mit unterschiedlichen Farben und Beschriftungen hinzu?

Susan Sarandon
Freigeben: 2024-10-22 15:09:03
Original
491 Leute haben es durchsucht

How to Manually Add Legends in Matplotlib with Distinct Colors and Labels?

Manuelles Erstellen einer Legende in Matplotlib

Beim Arbeiten mit großen Datensätzen in Matplotlib kann das manuelle Hinzufügen von Elementen mit unterschiedlichen Farben und Beschriftungen zur Legende hilfreich sein eine nützliche Technik sein. Dies verhindert Duplikate, die durch die automatische Einbindung von Daten in das Diagramm entstehen können.

Ursprünglicher Ansatz

Der ursprüngliche Ansatz versuchte, den folgenden Code zu verwenden:

ax2.legend(self.labels, colorList[:len(self.labels)])
plt.legend()
Nach dem Login kopieren

wobei self.labels die Anzahl der gewünschten Legendenbeschriftungen ist und colorList eine Teilmenge der im Plot verwendeten Farben ist. Diese Methode ergab jedoch keine Einträge in der Legende.

Lösung

Um eine Legende manuell zu erstellen, bietet der Legend Guide in der Matplotlib-Dokumentation eine Lösung. Dabei wird ein spezieller Künstler namens Patch erstellt, der als Handle in der Legende verwendet werden kann.

import matplotlib.patches as mpatches
import matplotlib.pyplot as plt

# Create a red patch
red_patch = mpatches.Patch(color='red', label='The red data')
Nach dem Login kopieren

Dieser Patch stellt nun die roten Daten dar und kann direkt zur Legende hinzugefügt werden.

plt.legend(handles=[red_patch])
Nach dem Login kopieren

Hinzufügen mehrerer Patches

Um mehrere Farben und Beschriftungen hinzuzufügen, kann dieselbe Technik angewendet werden, indem zusätzliche Patches erstellt werden.

blue_patch = mpatches.Patch(color='blue', label='The blue data')
plt.legend(handles=[red_patch, blue_patch])
Nach dem Login kopieren

Dies wird Das Ergebnis ist eine Legende mit zwei Einträgen, einer für jeden Patch.

Das obige ist der detaillierte Inhalt vonWie füge ich in Matplotlib manuell Legenden mit unterschiedlichen Farben und Beschriftungen hinzu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!