首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用matplotlib绘制具有2个特征的3D多元线性回归?

要使用matplotlib绘制具有2个特征的3D多元线性回归,可以按照以下步骤进行:

  1. 导入所需的库和模块:
代码语言:txt
复制
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
from sklearn.linear_model import LinearRegression
  1. 创建输入特征和目标变量的示例数据:
代码语言:txt
复制
# 输入特征
X1 = np.random.rand(100)
X2 = np.random.rand(100)

# 目标变量
y = 2 + 3*X1 + 4*X2 + np.random.randn(100)
  1. 构建特征矩阵和目标向量:
代码语言:txt
复制
# 特征矩阵
X = np.column_stack((X1, X2))

# 目标向量
y = y.reshape(-1, 1)
  1. 创建并拟合线性回归模型:
代码语言:txt
复制
# 创建线性回归模型
model = LinearRegression()

# 拟合模型
model.fit(X, y)
  1. 生成预测结果:
代码语言:txt
复制
# 生成预测结果
y_pred = model.predict(X)
  1. 创建3D图形并绘制数据点和回归平面:
代码语言:txt
复制
# 创建3D图形
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')

# 绘制数据点
ax.scatter(X1, X2, y, c='r', marker='o')

# 绘制回归平面
x1_grid, x2_grid = np.meshgrid(X1, X2)
y_pred_grid = model.intercept_ + model.coef_[0][0]*x1_grid + model.coef_[0][1]*x2_grid
ax.plot_surface(x1_grid, x2_grid, y_pred_grid, alpha=0.5)

# 设置坐标轴标签
ax.set_xlabel('X1')
ax.set_ylabel('X2')
ax.set_zlabel('y')

# 显示图形
plt.show()

这样就可以使用matplotlib绘制具有2个特征的3D多元线性回归图形了。

关于matplotlib的更多信息和使用方法,可以参考腾讯云的相关产品和文档:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券