現在以下のようなCSVをPythonのmatlabplotを用いて折れ線グラフをプロットしたいと思っています。
csv
10.03,0.974917,-0.330719,-0.695142,-0.645709,0.999507,-0.25156,-0.117937,-0.194653,0.987551 20.1,0.999999,-0.413285,-0.890581,-0.572809,1,-0.494727,-0.227334,-0.0783134,1 30.3,1,-0.991819,-0.999934,-0.899737,1,-0.291845,-0.229779,-0.171816,1
第一要素をx軸として、第二要素以下をそれぞれy軸としてプロットしたいと思っています。
そこで以下のようなPythonコードを書きました。
python
1import csv 2import matplotlib.pyplot as plt 3 4fn = 'test.csv' 5 6with open(fn, mode='r', newline='') as f_in: 7 reader = csv.reader(f_in) 8 data_array = [row for row in reader] 9 10 11plot_x = [] 12plot_y1 = [] 13plot_y2 = [] 14plot_y3 = [] 15plot_y4 = [] 16plot_y5 = [] 17plot_y6 = [] 18plot_y7 = [] 19plot_y8 = [] 20plot_y9 = [] 21for i in data_array: 22 plot_x.append(i[0]) 23 plot_y1.append(i[1]) 24 plot_y2.append(i[2]) 25 plot_y3.append(i[3]) 26 plot_y4.append(i[4]) 27 plot_y5.append(i[5]) 28 plot_y6.append(i[6]) 29 plot_y7.append(i[7]) 30 plot_y8.append(i[8]) 31 plot_y9.append(i[9]) 32 33plt.plot(plot_x, plot_y1) 34plt.plot(plot_x, plot_y2) 35plt.plot(plot_x, plot_y3) 36plt.plot(plot_x, plot_y4) 37plt.plot(plot_x, plot_y5) 38plt.plot(plot_x, plot_y6) 39plt.plot(plot_x, plot_y7) 40plt.plot(plot_x, plot_y8) 41plt.plot(plot_x, plot_y9) 42 43plt.show()
実行すると以下画像のような折れ線グラフが作成されましたが、第二要素以下に正負の数が入り混じっているためかおかしな折れ線グラフになっているように思います。
このy軸を負から正へとソートして表示するにはどのようにすればいいのでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/11/20 05:17
2021/11/20 05:23 編集
2021/11/20 05:27