Matplotlib散点图浮点数X轴数据点位置错误求助
散点图X轴浮点数位置错误的解决方法
检查并修正数据类型
你遇到的核心问题大概率是CYLINDERS列的实际数据类型为整数,而非你以为的浮点数。先执行代码确认类型:print(cdf.CYLINDERS.dtype)如果输出是
int64,将该列转换为浮点型:cdf['CYLINDERS'] = cdf['CYLINDERS'].astype(float)验证数据实际取值
排查是否在数据导入或预处理阶段,浮点数被意外取整。查看数据前几行确认:print(cdf.CYLINDERS.head(10))确认输出中存在4.4这类非整数值。
绘图时临时转换类型
若不想修改原数据集,可在绘图时直接转换数据类型:plt.scatter(cdf.CYLINDERS.astype(float), cdf.CO2EMISSIONS, color='blue') plt.xlabel("Engine size") plt.ylabel("Emission") plt.show()
从你提供的图来看,X轴显示整数刻度是matplotlib的默认行为,但只要数据是浮点型,散点会自动落在对应数值的位置(比如4.4会出现在4和5之间)。
内容的提问来源于stack exchange,提问作者Adrian Diaz
相关产品推荐
相关产品推荐

