Hinzufügen von Gruppenbeschriftungen zu Balkendiagrammen mit Python
Bei der Datenvisualisierung kann es nützlich sein, Gruppenbeschriftungen zu Balkendiagrammen hinzuzufügen, um Kategorisieren und verdeutlichen Sie die angezeigten Daten. Während Matplotlib hierfür keine integrierte Funktion hat, kann eine benutzerdefinierte Lösung mit dem folgenden Code implementiert werden:
def mk_groups(data): ... def add_line(ax, xpos, ypos): ... def label_group_bar(ax, data): ...
Die Funktion mk_groups konvertiert das Eingabewörterbuch in bestimmte Daten Format, das für die Erstellung des Balkendiagramms geeignet ist. Dieses Format besteht aus einer Liste von Listen, wobei jede innere Liste eine Gruppe darstellt und Tupel von (Beschriftung, Anzahl der Balken) enthält. Die Funktion add_line zeichnet vertikale Linien im Nebenplot, um die Gruppen zu trennen. Die Funktion label_group_bar verwendet das Wörterbuch und verwendet das von mk_groups generierte Datenformat, um das Balkendiagramm mit den Gruppenbezeichnungen zu erstellen, die sich unter den entsprechenden Balken befinden.
Um dies zu verwenden Lösung: Stellen Sie die Daten in einer Wörterbuchstruktur bereit, wobei die Schlüssel der obersten Ebene die Gruppenbeschriftungen sind und die nachfolgenden Ebenen die Beschriftungen und Werte für die Balken innerhalb jeder Gruppe enthalten. Die Funktion label_group_bar erstellt dann ein Balkendiagramm mit den gewünschten Gruppenbeschriftungen.
Beispiel:
Berücksichtigen Sie die folgenden Daten:
data = {'Room A': {'Shelf 1': {'Milk': 10, 'Water': 20}, 'Shelf 2': {'Sugar': 5, 'Honey': 6} }, 'Room B': {'Shelf 1': {'Wheat': 4, 'Corn': 7}, 'Shelf 2': {'Chicken': 2, 'Cow': 1} } }
Aufruf von label_group_bar(ax, data) wird erstellt ein Balkendiagramm mit den Gruppen „Raum A“ und „Raum B“ und den zugehörigen Beschriftungen. Das resultierende Diagramm ähnelt dem folgenden:
[Bild eines Balkendiagramms mit Gruppenbeschriftungen]
Das obige ist der detaillierte Inhalt vonWie füge ich mit Python Gruppenbeschriftungen zu Balkendiagrammen hinzu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!