为什么没有绘制预测?

Why is prediction not plotted?

这是我在 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()

我绘制的数据看起来是这样的: 拟合后,obj.predict(7)等于[7.]

我做错了什么?我希望看到绘制 7.7 点。

plot 方法取一个 X 轴数组和一个 Y 轴数组,并根据这些数组绘制一条 线 。您尝试使用 lines...

的方法绘制 point

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

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

这一行:

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

散点法将取给定的点 (7, 7) 并将其放入图表中,就像您想要的那样。

希望对您有所帮助:)