为什么没有绘制预测?

时间:2016-07-26 11:27:53

标签: python python-3.x numpy matplotlib linear-regression

这是我在Python 3中的代码:

from sklearn import linear_model
import numpy as np
obj = linear_model.LinearRegression()
allc = np.array([[0,0],[1,1],[2,2],[3,3],[4,4],[5,5],[6,6]])
X=allc[:,0]
X=X.reshape(-1, 1)
Y=X.reshape(X.shape[0],-1)
obj.fit(X, Y)
print(obj.predict(7))
import matplotlib.pyplot as plt
plt.scatter(X,Y,color='black')
plt.plot(X[0],obj.predict(7),color='black',linewidth=3)
plt.show()

我的绘图数据看起来像这样: enter image description here 拟合后,obj.predict(7)等于[7。]

我做错了什么?我预计会看到7.7点被绘制。

1 个答案:

答案 0 :(得分:1)

绘图方法是为X轴采用数组,为Y轴采用数组,并根据这些数组绘制线。您尝试使用的方法绘制 ...

为了让您的代码正常工作(我已对其进行了测试并且有效)请切换此行:

plt.plot(X[0],obj.predict(7),color='black',linewidth=3)

这一行:

plt.scatter(7,obj.predict(7),color='black',linewidth=3)

分散方法将采用给定的点(7,7)并将其放入图中,就像你想要的那样。

我希望这有助于:)