You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Matplotlib绘制的条形图每个柱子上方显示count计数值

条形图柱顶添加计数标注实现方法

你可以通过获取柱状图的柱体元素,遍历后在每个柱体顶部添加文本标注即可实现需求,修改后的完整代码如下:

# 导入依赖库
import pandas as pd
from matplotlib import pyplot as plt

# 创建DataFrame
df = pd.DataFrame({
    'city_code':[1200013, 1200104, 1200138, 1200179, 1200203],
    'index':['good', 'bad', 'good', 'good', 'bad']
})

# 绘制统计图,将返回的Axes对象赋值给ax变量
ax = df['index'].value_counts().plot(kind='bar', color='darkcyan', figsize=[15,10])
plt.xticks(rotation=0, horizontalalignment="center", fontsize=14)
plt.ylabel("cities", fontsize=16)

# 遍历所有柱体,添加顶部标注
for patch in ax.patches:
    # 获取柱体高度(即计数值)
    count = patch.get_height()
    # 计算标注的水平位置:柱体水平中心
    x_pos = patch.get_x() + patch.get_width() / 2
    # 添加文本标注
    ax.text(x_pos, count, str(count), ha='center', va='bottom', fontsize=14)

plt.show()

参数说明

  • ax.patches 存储了当前图表所有的柱体对象,每个对象对应一个条形
  • ha='center' 表示标注文本水平居中对齐柱体
  • va='bottom' 表示标注文本底部对齐柱体顶部,避免和条形重叠
  • 可以根据需要调整fontsize、color等参数修改标注的样式

内容的提问来源于stack exchange,提问作者user11545193

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 23:06:01