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

Pandas绘图如何将偶数列设为x轴奇数列设为y轴并解决KeyError: '0'报错

错误原因

KeyError: '0' 是因为你尝试用字符串类型的'0'索引整数类型的列名。你读取的数据集列名本身是整数(0、1、2……),但代码里用f'{df.keys()[i*2]}'把列名强制转为了字符串格式,pandas在列名里找不到字符串'0',就抛出了这个错误。

修复后的绘图代码

你要实现偶数列当x轴、对应奇数列当y轴绘图,直接用列的位置索引取值即可,不需要转字符串:

import pandas as pd
import matplotlib.pyplot as plt

# 读取数据集,header=0表示第一行作为列名
df = pd.read_csv('us_test_drop.csv', header=0)
fig, ax = plt.subplots(figsize=(10,6))
ax.grid()

# 遍历每一组偶数列(x轴)和对应奇数列(y轴)
for i in range(0, len(df.columns), 2):
    x = df.iloc[:, i]
    y = df.iloc[:, i+1]
    ax.plot(x, y)

ax.set_title('US')
ax.set_xlabel('f', fontsize=12, color='r')
ax.set_xlim([0,18])
plt.show()

如果需要展示每组的图例,在ax.plot()里添加label=f'序列{i//2+1}'参数,最后加一行plt.legend()即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 19:48:04