根据Python中的值绘制直方图排序

时间:2018-05-16 04:39:09

标签: python pandas histogram

我有一个Pandas数据框如下:

              number
Art           10000
Comics        235
Crafts        293
Dance         824

如何绘制按值排序的直方图?

演示:

*
* *
* *
* *
* *
* * * *
* * * *
-------------
x labels = Art/ Dance/ Crafts/ Comics

我尝试了pandas.DataFrame.hist,但不确定如何选择正确的参数。

1 个答案:

答案 0 :(得分:0)

您可以先对数据框进行排序,然后使用数据框plot方法创建绘图

测试数据(我将category设置为索引,就像您对实际数据的看法一样):

import pandas as pd

df = pd.DataFrame({'category': ['Art', 'Comics', 'Crafts', 'Dance'],
                   'number': [10000, 235, 293, 824]})
df.set_index('category', inplace=True)

          number
category        
Art        10000
Comics       235
Crafts       293
Dance        824

然后使用numberdf.sort_values()排序并致电df.plot()

df.sort_values('number', inplace=True)

df.plot(y='number', kind='bar', legend=False)

enter image description here