

まず、csvファイルの中身についてですが、以下のようになっており1列目から順に`x1,x2,1,y`となっています。(実際は101行4列)

[code]

    "x1","x2","1","y"
    -0.626,-0.620,1,0.282
    0.183,0.042,1,1.732
    -0.835,-0.910,1,-0.293
    1.595,0.158,1,2.506
    0.329,-0.654,1,0.615
    
[/code]

そこで、横軸を`a*x1+b*x2`,縦軸を`y`と設定しプロットしたいのですがうまくいきません。それぞれ一行づつデータを取り出し、変数`a,b`を掛け合わせプロットするにはどうしたら良いでしょうか。


CC BY-SA 4.0
2019-05-18T13:51:48.573
55073
2020-07-25T11:00:30.263
34373
question
python python3 matplotlib csv
csvファイルのデータをpythonのmatplolibでプロットする方法


aとbの設定がよくわかりませんが固定値として回答させてもらいます。またCSVファイルは、aaa.csvとしました。

[code]

        import numpy as np
        import matplotlib.pyplot as plt
        data = np.loadtxt('aaa.csv', delimiter=',',skiprows=1)
        print("data\n",data)
        a = 1
        b = 2
        x1 = data[:,0]
        x2 = data[:,1]
        y = data[:,3]
        print(x1,x2,y)
        x = a*x1+b*x2
        fig = plt.figure()
        ax = fig.add_subplot(1,1,1)
        ax.scatter(x,y)
        ax.set_xlabel('x')
        ax.set_ylabel('y')
    
[/code]

こんな感じでは？


CC BY-SA 4.0
2019-05-18T18:45:54.207
55074
2019-05-18T18:45:54.207
34277
55073
answer