我有一個(gè)包含20列的csv文件。現(xiàn)在,我可以使用此代碼繪制圖表,其中第一列為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()問(wèn)題是我必須使用定義所有列a = [row [0]用于數(shù)據(jù)行]這段代碼對(duì)所有列一一對(duì)應(yīng)。我實(shí)際上想擁有某種方法,以便它可以將第一列作為x軸常量繪制所有19列,并將它們繪制在單個(gè)窗口中。請(qǐng)幫忙。
3 回答

ITMISS
TA貢獻(xiàn)1871條經(jīng)驗(yàn) 獲得超8個(gè)贊
這個(gè)怎么樣:
[plt.plot(data[0],data[x]) for x in range(1,len(data[:,0]))]

米脂
TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超3個(gè)贊
您可以嘗試使用pandas,它使用matplotlib進(jìn)行繪圖。例如,如果您有這樣的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)
默認(rèn)情況下,第一列用作索引和x軸。有關(guān)更多詳細(xì)信息,請(qǐng)參見(jiàn)打印文檔。
添加回答
舉報(bào)
0/150
提交
取消