Python 3D 图形可视化:更改平面下方点颜色
Python 3D 图形可视化:更改平面下方点颜色
使用 Python 的 Matplotlib 库,可以轻松创建交互式的 3D 图形,并通过调整颜色来突出显示数据中的特定特征。本文将介绍如何修改 3D 图形中的点颜色,特别是在平面下方。
示例代码:
以下示例展示了如何使用 matplotlib.pyplot 创建一个 3D 图形,并通过更改 ax.scatter 函数中的 c 参数来更改平面下方点的颜色。
from cProfile import label
import statsmodels.api as sm
import statsmodels.formula.api as smf
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
from mpl_toolkits import mplot3d
# 以上导入绘图 matplotlib,数据处理 numpy,pandas,拟合 statsmodels 各个模块
data = pd.read_csv('cobb_douglas.csv') # 下载数据
model = smf.ols('lny ~ lnk + lnl', data=data) # 以 lny 为响应变量,lnk 与 lnl 为特征变量进行二元回归
results = model.fit()
print(results.params) # 输出回归结果
# 以下为绘图
xx = np.linspace(data.lnk.min(), data.lnk.max(), 100)
yy = np.linspace(data.lnl.min(), data.lnl.max(), 100)
XX, YY = np.meshgrid(xx, yy)
ZZ = results.params[0] + XX * results.params[1] + YY * results.params[2]
fig = plt.figure()
ax = plt.axes(projection='3d')
ax.plot_surface(XX, YY, ZZ, rstride=8, cstride=8, alpha=0.4, cmap='pink_r', label='lny = 0.233054*lnk + 0.807278*lnl - 0.177310')
# 将平面下方点的颜色改为红色
ax.scatter(data.lnk, data.lnl, data.lny, c='red')
ax.set_xlabel('lnk')
ax.set_ylabel('lnl')
ax.set_zlabel('lny')
ax.set_title('Figure 1.1 lny's regression to lnk and lnl', fontdict=None, loc='center', pad=None)
plt.show()
解释:
ax.scatter(data.lnk, data.lnl, data.lny, c='red')行代码使用ax.scatter函数绘制数据点,并通过设置c='red'参数将所有点的颜色更改为红色。
其他颜色选项:
您可以使用不同的颜色名称或 RGB 颜色值来更改平面下方点的颜色。以下是一些示例:
c='blue':蓝色c='green':绿色c='black':黑色c=(0.5, 0.2, 0.8):RGB 颜色值
通过修改代码中的颜色参数,您可以根据需要自定义 3D 图形,突出显示数据中的特定特征。
原文地址: https://www.cveoy.top/t/topic/pfL2 著作权归作者所有。请勿转载和采集!