如何基于给定DataFrame绘制x轴为表头y轴为计数的柱状图
df.plot(kind='bar')默认会将DataFrame的行索引作为x轴、列名作为图例分组,和你要的「表头作为x轴、对应计数作为y轴」的需求逻辑相反,按以下步骤调整即可:
调整数据结构
根据你的实际需求选择对应转换方式:
- 若需要统计每列非空值的出现次数:
# 得到以原表头为索引、每列计数为值的Series对象 col_count = df.count()
- 若你的DataFrame本身仅为1行,直接取每行的值作为y轴数值:
col_count = df.iloc[0]
绘制柱状图
直接对转换后的Series调用绘图方法即可:
import matplotlib.pyplot as plt col_count.plot(kind='bar') # 可选配置,优化图表显示效果 plt.xlabel('分类') plt.ylabel('出现次数') plt.xticks(rotation=30) # 旋转x轴标签避免文字重叠 plt.tight_layout() # 自动调整布局防止标签被截断 plt.show()
内容的提问来源于stack exchange,提问作者siri k
相关产品推荐
相关产品推荐

