2017-11-13 12 views
1

私はpyplotを使って線形回帰モデルをプロットしています。以下は私のコードです。私は上記のコードを使用してプロットした場合pyplotを使った線形回帰の奇妙なグラフ

plt.scatter(X_train, y_train, color ='red') 
plt.show() 

、プロットは、以下のように示されている:

plt.plot(X_train, regressor.predict(X_train), color = 'blue') 
plt.show() 

それは行を示す: Scatter Plot

Iは次いで、以下のコードを使用して、線グラフをプロット予想通り。 Line Grpah

しかし、私は一緒にそれらの両方をプロットしてみたときに、以下のように、グラフはめちゃくちゃなっている:

plt.scatter(X_train, y_train, color ='red') 
plt.plot(X_train, regressor.predict(X_train), color = 'blue') 
plt.show() 

Linear Regression

私は余分を行う必要がある場合は私に知らせてください線形回帰グラフを適切にプロットするためのコーディング

答えて

0

Pyplotは、ポイント間のドットを、発生順にX_trainに接続しますが、通常、その順序については何も知られていません。まれにソートされています。プロットする前に配列をソートする必要があります。

sorted_indices = numpy.argsort(X_train) 
sorted_X = X_train[sorted_indices] 
plt.plot(sorted_X, regressor.predict(sorted_X), color = 'blue') 
+0

あなたのケースはかなり奇妙に見えますが、matplotlibのいくつかの変わったものかもしれません。これが助けになるとは思わない。 – Perfi