2017-08-17 12 views
0

私は回帰フィッティングの曲線を描こうとしています。曲線はより高度の多項式(6以上)のためのものです。matplotlib pythonで多項式曲線を描く方法は?

fig=figure() 
ax1=fig.add_axes((0.1,0.2,0.8,0.7)) 
ax1.set_title("Training data(blue) and fitting curve(red)") 
ax1.set_xlabel('X-axis') 
ax1.set_ylabel('Y-axis') 

ax1.plot(x_train,y_train,'.',x_train,np.polyval(best_coef,x_train),'-r') 
show() 

This is the output of the given code

私はそれが滑らかな曲線になりたいです。

something like this , with a continues red line , instead of discreet point of red

+0

'best_coef'はどこから来ましたか?あなたはこれを書きましたか? – wwii

+0

私は、データに適合する最良次数多項式の係数を返すpolyfit関数を書いています。 – ajithalbus

答えて

1

私はあなただけフィット結果をプロットする前にx_trainをソートする必要があると思う:

ax1.plot(x_train,y_train,'.', np.sort(x_train),np.polyval(best_coef,np.sort(x_train)),'-r') 

あなたは(もそのためと当てはめ値)x_train値のようなルックスを含まプロットランダムでありますプロットルーチンは最も近い点を接続するのではなく、配列内の連続点を接続します。

+0

ありがとうございます。それは今働く;) – ajithalbus

関連する問題