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

Matplotlib散点图报x与y需同尺寸但二者尺寸一致问题求助

报错根因

你调用groupby("mois")['death_cause'].count()统计后,mois已成为df_death_mois1的行索引,而非普通数据列。执行print(df_death_mois1.columns)可验证:输出仅包含['death_cause'],不存在名为mois的列。matplotlib调用scatter时无法匹配到x参数对应的列值,因此触发尺寸不一致报错。

解决方案

以下三种方法任选其一即可:

  • 方法1:groupby时禁止分组键转为索引
    修改分组统计代码为:
    df_death_mois1 = df_death_mois.groupby("mois", as_index=False)['death_cause'].count()
    
    无需额外执行to_frame(),该语句输出结果直接为带mois、death_cause两列的DataFrame,原有绘图代码可正常运行。
  • 方法2:绘图时直接读取索引和列值
    修改散点图绘制代码为:
    plt.scatter(x=df_death_mois1.index, y=df_death_mois1['death_cause'])
    
  • 方法3:手动将索引重置为普通列
    在分组统计、转DataFrame后追加重置索引代码:
    df_death_mois1 = df_death_mois1.reset_index()
    
    重置后mois会转为普通数据列,原有绘图代码可正常运行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 21:45:04