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

解决Seaborn绘制多箱线图报错:无法识别country_name的问题

解决Seaborn箱线图"Could not interpret input 'country_name'"错误

报错的核心原因是country_name是你的DataFrame索引列,而非普通数据列,Seaborn的boxplot默认只会在数据列里查找x参数指定的字段,所以找不到就报错了。下面是两种简单的解决办法:

方法一:将索引转为普通数据列

用reset_index()把索引列转成常规列,之后就能直接用原代码绘制:

# 把索引列转为普通列,修改后的数据会保留原索引的内容到country_name列
holGROUPED = holGROUPED.reset_index()
# 重新绘制箱线图
sns.boxplot(data=holGROUPED, x='country_name', y='deaths')

方法二:直接使用索引作为X轴数据

不修改原DataFrame结构,直接把索引传给x参数:

sns.boxplot(data=holGROUPED, x=holGROUPED.index, y='deaths')

额外提示

如果绘制后发现X轴的国家名称重叠,可以用matplotlib调整标签角度,提升可读性:

import matplotlib.pyplot as plt

sns.boxplot(data=holGROUPED, x='country_name', y='deaths')
plt.xticks(rotation=45, ha='right')  # 右对齐标签,避免互相遮挡
plt.tight_layout()  # 自动调整布局,防止标签被截断
plt.show()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 05:50:02