我正在使用matplotlib。我有一个下面的线性回归模型,带有一个曲面和训练数据集
以下是我的代码片段:
nx, ny = (100, 100)
x1 = np.linspace(-3, 10.0, nx)
x2 = np.linspace(0, 15.0, ny)
x_plane, y_plane = np.meshgrid(x1, x2)
XY = np.stack((x_plane.ravel(), y_plane.ravel()),axis =1)
z_plane = np.array([normal_equation(x,y) for x,y in XY]).reshape(x_plane.shape)
fig = plt.figure(figsize=(10, 8))
ax = fig.gca(projection = '3d')
ax.scatter(X2, X1, Y, color='r')
ax.plot_surface(x_plane, y_plane, z_plane, color='b', alpha=0.4)
ax.set_xlabel('x1')
ax.set_ylabel('x2')
ax.set_zlabel('y')
ax.set_zlim(-10, 5)
任何帮助都将不胜感激
我们可以用一些简单的数学事实来解决这个问题:
首先,我们可以使用以下代码找到垂直于平面的向量:
(注意:我们假设平面不是垂直的,它不应该是线性回归)
第二,我们需要沿着这个法向量追溯到平面上的每个点
最后,我们可以在这些点之间绘制连接
我希望这有帮助
相关问题 更多 >
编程相关推荐