Python 无法使用MATPLOTLIB从EXCEL打印多个数据

Python 无法使用MATPLOTLIB从EXCEL打印多个数据,python,excel,numpy,matplotlib,xlrd,Python,Excel,Numpy,Matplotlib,Xlrd,我有一个包含1000行和300列的Excel文件。 我想绘制(第1列)与(第2列至288列)的对比图;我的第一列是X轴,其余的列在Y轴上。 我的代码如下;我没有得到展示。 没有这样的错误消息 from openpyxl import load_workbook import numpy as np import matplotlib.pyplot as plt wb = load_workbook('CombinedData1.xlsx') sheet_1 = wb.get_sheet_by_

我有一个包含1000行和300列的Excel文件。 我想绘制(第1列)与(第2列至288列)的对比图;我的第一列是X轴,其余的列在Y轴上。 我的代码如下;我没有得到展示。
没有这样的错误消息

from openpyxl import load_workbook
import numpy as np
import matplotlib.pyplot as plt

wb = load_workbook('CombinedData1.xlsx')
sheet_1 = wb.get_sheet_by_name('CombinedData')

x = np.zeros(sheet_1.max_row)
y = np.zeros(sheet_1.max_row)
a = np.zeros(sheet_1.max_column)
b = np.zeros(sheet_1.max_column)

print (sheet_1.max_row)
print (sheet_1.max_column)

for i in range(0, sheet_1.max_row):
    for j in range(1, 7):
        x[i] = sheet_1.cell(row=i + 1, column=j).value
        y[j] = sheet_1.cell(row=i + 1, column=j).value
        # z[i] = sheet_1.cell(row=i + 1, column=3).value
        print x[i]
        # print y[i]
        plt.plot(x[i], y[i], 'bo-', label='Values')

plt.grid(True)
plt.xlim(0,100)
plt.ylim(0,10)
plt.show()

尝试类似以下嵌套循环的操作:

for j in range(1, 7): for i in range(0, sheet_1.max_row): x[i] = sheet_1.cell(row=i + 1, column=j).value y[i] = sheet_1.cell(row=i + 1, column=j).value #z[i] = sheet_1.cell(row=i + 1, column=3).value print x[i] #print y[i] plt.plot(x, y, label='Values %d' % j, hold=1) 对于范围(1,7)内的j: 对于范围内的i(0,第1页,最大行): x[i]=表1.单元格(行=i+1,列=j).值 y[i]=表1.单元格(行=i+1,列=j).值 #z[i]=表1.单元格(行=i+1,列=3).值 打印x[i] #打印y[i] plt.plot(x,y,label='value%d'%j,hold=1)
保持选项将把7个单独的绘图放在一个单独的绘图中。此外,您应该考虑使用大熊猫包来导入和处理纸张数据。

尝试如下嵌套循环:

for j in range(1, 7): for i in range(0, sheet_1.max_row): x[i] = sheet_1.cell(row=i + 1, column=j).value y[i] = sheet_1.cell(row=i + 1, column=j).value #z[i] = sheet_1.cell(row=i + 1, column=3).value print x[i] #print y[i] plt.plot(x, y, label='Values %d' % j, hold=1) 对于范围(1,7)内的j: 对于范围内的i(0,第1页,最大行): x[i]=表1.单元格(行=i+1,列=j).值 y[i]=表1.单元格(行=i+1,列=j).值 #z[i]=表1.单元格(行=i+1,列=3).值 打印x[i] #打印y[i] plt.plot(x,y,label='value%d'%j,hold=1)
保持选项将把7个单独的绘图放在一个单独的绘图中。此外,您应该考虑使用大熊猫包来输入和处理纸张数据。

< P>我会考虑使用<代码>熊猫> /COD>:

import pandas
df = pandas.read_excel('CombinedData1.xlsx', sheetname='CombinedData', header=None)
df.plot(x=0)


我会考虑使用<代码>熊猫> /代码>:

import pandas
df = pandas.read_excel('CombinedData1.xlsx', sheetname='CombinedData', header=None)
df.plot(x=0)


如果有错误消息,错误消息是什么?没有错误消息。我想我遵循的过程是错误的。我想画(第1列)和(第2列到288列)。但是我想不出一个办法。尝试
plt.plot(x,y,'bo-',label='Values')
在for循环之后/之外。你在评论中说的内容从一开始就应该出现在你的OP中。会发生什么?如果有错误消息,错误消息是什么?没有这样的错误消息。我想我遵循的过程是错误的。我想画(第1列)和(第2列到288列)。但是我想不出一个办法。在for循环之后/之外尝试
plt.plot(x,y,'bo-',label='Values')
你在评论中说的内容从一开始就应该出现在你的OP中。会发生什么?你为什么推荐熊猫?熊猫如何简化任务?如果没有这些信息,推荐是毫无用处的!你为什么推荐熊猫?熊猫如何简化任务?如果没有这些信息,推荐是毫无用处的!