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

读取Excel多工作表绘图时提示'Excelfile'无'iloc'属性报错如何解决

报错原因
  • pd.ExcelFile()返回的是Excel文件操作对象,不是工作表对应的DataFrame结构,本身不支持iloc索引方法,这是触发报错的核心原因
  • 原代码循环体内没有将当前遍历的工作表解析为DataFrame,且第二个iloc[:,9]前缺少调用对象,属于语法错误
修复后可直接运行的代码
import pandas as pd
import matplotlib.pyplot as plt

# 读取目标Excel文件
excel_file = pd.ExcelFile('Current parametric sweep_reference.xlsx')
# 获取文件内全部工作表名称
all_sheets = excel_file.sheet_names
print(all_sheets)

# 遍历每个工作表绘制曲线
for sheet_name in all_sheets:
    # 将当前工作表解析为DataFrame
    df = excel_file.parse(sheet_name)
    # 取第2列(索引1)为X轴、第10列(索引9)为Y轴绘图,标注工作表名便于区分
    plt.plot(df.iloc[:, 1], df.iloc[:, 9], label=sheet_name)

# 显示图例,区分不同工作表的曲线
plt.legend()
# 渲染展示图像
plt.show()
代码调整说明
  • 保留了原需求的遍历全部工作表、提取指定列绘图的逻辑,所有曲线会自动叠加在同一张画布上
  • 新增parse()方法调用完成工作表到DataFrame的转换,修正iloc调用对象的错误
  • 增加图例标注,可直观区分不同工作表对应的曲线

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 04:09:01