2016-10-24 5 views
1

Ich verwende:Wie man horizontalen Balkendiagramm aus einem Wörterbuch mit Matplotlib plotten?

plt.bar(range(len(d)), d.values(), align='center') 
plt.yticks(range(len(d)), d.keys()) 
plt.xlabel('frequency', fontsize=18) 
plt.ylabel('keywords', fontsize=18) 

plt.show() 

und ich erhalte die Ausgabe unter: enter image description here

aber ich möchte für jedes Keyword auf der y-Achse, anstatt die x-Achse die entsprechenden Balken zeigen . Wie kann ich das erreichen?

+0

lesen matplot doc: [matplot bar()] (http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.bar) – furas

+0

Es sieht so aus, als würden Sie 'yticks' die Schlüssel des Wörterbuches setzen. Vielleicht willst du das für 'Xticks' machen? –

+0

Aber dann wird es Schlüsselwörter auf x-Achse plotten. Ich muss Schlüsselwörter auf y-Achse und entsprechenden horizontalen Balken mit entsprechenden Werten auf der x-Achse plotten. –

Antwort

0

Mit barh() Funktion des matplotlib wird für Dich eine horizontale Balkendiagramm erstellen:

plt.barh(range(len(d)), d.values(), align='center') 

Aus der Dokumentation:

matplotlib.pyplot.barh(bottom, width, height=0.8, left=None, hold=None, **kwargs)

Stellen eine horizontale Balkendiagramm mit Rechtecke durch begrenzt:

left, left + width, bottom, bottom + height

(links, rechts, unten und Oberkanten)

Boden, Breite, Höhe, und kann entweder Skalar oder Sequenzen links

Auch die barh Demo auf der matplotlib Galerie-Seite here

+0

Danke für die Antwort .. yeah jedes Mal, wenn ich barh fehlte. –

0

Verwenden Sie plt.barh() anstelle der vertikalen Balkendiagrammfunktion.

Verwandte Themen