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

绘制散点图报x和y尺寸不一致、pop变量未定义问题求助

报错根因

两个报错是连锁触发的,核心问题出在pop变量上:

  • 触发Name "pop" is not defined的直接原因是当前代码运行环境中,不存在名为pop的变量
  • 触发x and y must be the same size是连锁结果:你在调用plt.scatter()绘制散点图时,将未定义的pop作为y轴参数传入,函数实际接收到的y轴参数是残缺/空值对象,和x轴传入的序列长度不匹配,就抛出了尺寸不一致的错误。

常见的触发场景:

  • 读取数据集时列名匹配错误:比如数据源中对应人口的列名是Pop/population/带尾部空格的pop ,和你代码里写的小写pop不一致,没有成功取到对应列
  • 变量定义步骤漏执行:在Notebook类开发环境中,生成pop变量的代码单元格没有运行,直接跳去执行了绘图代码,运行时内存里根本没有存入pop对象
  • 变量名拼写错误:生成人口序列时把变量名写成了pops/pop_data这类其他名字,后续绘图时错写成pop导致找不到
  • 数据过滤逻辑错误:生成pop序列时写了过严的筛选条件,直接把序列筛成了空对象。
修复方案

按以下顺序排查即可解决:

  1. 逐行运行绘图前的所有前置代码,不要跳步执行,尤其是Notebook环境下要保证代码从上到下顺序运行
  2. 检查pop变量的生成逻辑:
    • 如果是从DataFrame中取列,先执行print(你的数据集对象.columns)核对所有列名,存在拼写/大小写/空格偏差的,要么改代码里的列名,要么执行重命名:
      你的数据集对象.rename(columns={'数据源里的实际列名':'pop'}, inplace=True)
      
    • 如果是手动生成的序列,在绘图前加一行print(len(x轴变量), len(pop)),确认两个序列长度完全一致,且pop能正常打印出值
  3. 确认pop能正常读取、长度匹配后,再调用散点图绘制函数即可,两个报错会同时消除。

散点图报错现场截图

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.02 03:36:34