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

使用Pandas DataFrame调用Matplotlib绘制柱状图时高度异常问题排查

问题原因及解决办法

你的问题和Pandas的float64数据类型完全无关,核心错误是调用了sum(price)——这个操作会把price列的所有数值求和,得到一个单一的总数值。当你把这个单一值传给plt.bar()的y参数时,Matplotlib会给每个x轴的customer_id都使用这个相同的总和值,所以所有柱子高度完全一致。

修正后的代码

把sum(price)换成price即可,直接传入整个列的数值:

pandas_df.dtypes
display(pandas_df )
customer_id = pandas_df['customer_id']
price = pandas_df['sum(price)']
plt.bar(customer_id, price)  # 去掉sum()
plt.show()

补充说明

你手动用列表绘制正常,是因为你传入的是每个元素对应的数值列表,而不是单一的求和值。只要直接传入Pandas的Series(也就是price变量),Matplotlib会自动遍历每个元素和对应的customer_id匹配,画出正确的柱状图。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 10:33:12