为了账号安全,请及时绑定邮箱和手机立即绑定

matplotlib绘制所有列的csv文件

matplotlib绘制所有列的csv文件

肥皂起泡泡 2021-03-30 12:11:46
我有一个包含20列的csv文件。现在,我可以使用此代码绘制图表,其中第一列为x轴,其余为y轴。import numpy as npimport matplotlib.pyplot as pltdata = np.genfromtxt('cs.csv',delimiter=',', dtype = float)a = [row[0] for row in data]b = [row[1] for row in data]c = [row[2] for row in data]fig = plt.figure()ax = fig.add_subplot(111, axisbg = 'w')ax.plot(a,b,'g',lw=1.3)ax.plot(a,c,'r',lw=1.3)plt.show()问题是我必须使用定义所有列a = [row [0]用于数据行]这段代码对所有列一一对应。我实际上想拥有某种方法,以便它可以将第一列作为x轴常量绘制所有19列,并将它们绘制在单个窗口中。请帮忙。
查看完整描述

3 回答

?
ITMISS

TA贡献1871条经验 获得超8个赞

这个怎么样:

[plt.plot(data[0],data[x]) for x in range(1,len(data[:,0]))]


查看完整回答
反对 回复 2021-04-01
?
米脂

TA贡献1836条经验 获得超3个赞

您可以尝试使用pandas,它使用matplotlib进行绘图。例如,如果您有这样的CSV:


a,b,c

20,2,5

40,6,8

60,4,9

您可以绘制列b,c如下所示:


import pandas as pd


df = pd.DataFrame.from_csv('test.csv', parse_dates=False)

df.b.plot(color='g',lw=1.3)

df.c.plot(color='r',lw=1.3)

默认情况下,第一列用作索引和x轴。有关更多详细信息,请参见打印文档。


查看完整回答
反对 回复 2021-04-01
  • 3 回答
  • 0 关注
  • 240 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信