我有一个Pandas数据框如下:
number
Art 10000
Comics 235
Crafts 293
Dance 824
如何绘制按值排序的直方图?
演示:
*
* *
* *
* *
* *
* * * *
* * * *
-------------
x labels = Art/ Dance/ Crafts/ Comics
我尝试了pandas.DataFrame.hist
,但不确定如何选择正确的参数。
答案 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
然后使用number
按df.sort_values()
排序并致电df.plot()
:
df.sort_values('number', inplace=True)
df.plot(y='number', kind='bar', legend=False)