如何使用matplotplib从excel工作簿为不同的工作表绘制不同的图形?

时间:2019-02-15 12:29:21

标签: python excel pandas matplotlib graph

我擅长于3个不同的工作表(Sheet1,Sheet2,Sheet3),每个工作表的X,Y都有2列。

enter image description here

我想为这三个各自的图纸绘制3个不同的图形。 如何在PYthon中使用Pandas和Matplotlib绘制它们?

1 个答案:

答案 0 :(得分:0)

pandas软件包具有Excel读取绘图功能。一种可能的解决方案如下:

# Read all sheets of the workbook
sheets = pd.read_excel("/path/to/your/datafile.xlsx", sheet_name=None)
for sheet_name, df in sheets.items():
    df.plot(x='x', y='y', title=sheet_name)

这给了我一系列类似于上图的图像(但带有其他工作表标题-我将数据复制了三张)。

enter image description here

如果您只想使用特定的工作表名称,则可以在read_excel呼叫后加上

for sheet_name in ("Sheet1", "Sheet2", "Sheet3"):
    df = sheet[sheet_name]
    df.plot(x='x', y='y', title=sheet_name)

编辑:发问者报告已使用以下代码成功处理了相关的特定文件。

for i in range(3):
   df = pd.read_excel(excel_file, sheet_name=i)
   f = Figure(figsize=(3, 2), dpi=100)
   a = f.add_subplot(111)
   a.plot(df['x'], df['y'], 'ro')