python - 在 Python 中按值绘制直方图排序
问题描述
我有一个熊猫数据框如下:
number
Art 10000
Comics 235
Crafts 293
Dance 824
如何绘制按值排序的直方图?
示范:
*
* *
* *
* *
* *
* * * *
* * * *
-------------
x labels = Art/ Dance/ Crafts/ Comics
我试过pandas.DataFrame.hist
了,但不确定如何选择合适的参数。
解决方案
您可以先对数据框进行排序,然后使用您的数据框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)
推荐阅读
- reactjs - 使用 react-router-dom 6 在反应中导航
- reactjs - 将函数传递给组件,REACT
- static - 在 C++17 中声明为 constexpr 的类的变量/数据成员也是静态的吗?
- sql-server - Oracle Data Integrator 模型在逆向工程后不显示表
- python - 如何使用python sql组合两列文本
- angular - 如何使用从孩子到父母的事件
- java - 无法使用 Java 中的 Apache Olingo 访问 Dynamics 365 Business Central
- python - 如何在 python 中读取所有 IOT HUB 设备 C2D 消息
- python - Dockerfile ARG 运行 python 脚本
- javascript - 在 React 中处理多个 Material UI 复选框