Comment faire pour déterminer l'ordre de barres dans une matplotlib graphique à barres

Supposons que nous lire des données dans une pandas trame de données:

data1 = pd.read_csv("data.csv", "\t")

Le contenu ressemble à ceci:

Comment faire pour déterminer l'ordre de barres dans une matplotlib graphique à barres

Et ensuite de définir une fonction qui devrait nous donner un diagramme à barres horizontales, où la longueur des barres représentent les valeurs et les bars sont étiquetés avec les touches.

def barchart(data, labels):
    pos = arange(len(data))+.5    # the bar centers on the y axis
    barh(pos, data, align='center', height=0.25)
    yticks(pos, labels)

Ensuite, nous appelons la fonction plot comme ceci:

barchart(data1["val"], data1["key"])

qui nous donne la suite de l'intrigue:

Comment faire pour déterminer l'ordre de barres dans une matplotlib graphique à barres

Maintenant, qu'est ce qui détermine l'ordre des barreaux?

Supposons que nous voulons les barres dans un ordre particulier, dire [C, A, D, F, E, B], comment pouvons-nous appliquer cette?

  • viens de re-commander votre entrée.
  • Comment réorganiser l'entrée de la liste [C, A, D, F, E, B] ?
  • barchart(data[['C', 'A', 'D', 'F', 'E', 'B']], labels)
  • data[['C', 'A', 'D', 'F', 'E', 'B']] -- il n'est pas d'aller travailler, de cette façon, vous pouvez sélectionner des colonnes
InformationsquelleAutor clstaudt | 2013-12-12