ax = fig.add_subplot(111, projection='3d')x = np.linspace(-5, 5, 100)y = np.linspace(-5, 5, 100)X, Y = np.meshgrid(x, y)Z = np.sin(np.sqrt(X**2 + Y**2))surf = ax.plot_surface(X, Y, Z, cmap='coolwarm')plt.show()A选项:输出图像是一个点图B选项:输出图像是一...
set_title('3D Surface Plot with Colorbar') plt.show() 通过这些定制选项,我们可以创建出更具信息量和美观度的3D曲面图。掌握这些技巧后,你将能够根据自己的需求创建出各种各样的3D可视化效果。 添加透明度和阴影 除了标签、标题和色标之外,我们还可以通过调整透明度和阴影效果来增强3D曲面图的视觉效果。透明度...
使用ax.plot_surface函数绘制了3D表面投影图。 x_mesh、y_mesh和z参数分别表示表面投影图的位置和对应的z轴数据。 cmap='viridis'参数指定了使用viridis颜色映射方案来表示表面的颜色。 使用ax.set_xlabel、ax.set_ylabel和ax.set_zlabel函数设置了坐标轴的标签。 运行示例代码后,你将看到一个3D表面投影图,其中...
ax = fig.add_subplot(111, projection='3d') 在上面的代码中,首先创建一个图形对象fig,然后通过add_subplot函数创建一个3D轴ax。 3、绘制3D曲面图 绘制3D曲面图是最关键的一步。Matplotlib提供了plot_surface函数,可以用于绘制3D曲面图,并应用颜色映射: surf = ax.plot_surface(x, y, z, cmap='viridis')...
ax.set_title('3D Surface Plot') 调整视角: 你可以通过调整视角来优化图形的展示效果。 ax.view_init(elev=20., azim=-35) elev参数控制着上下旋转的角度,azim参数控制着左右旋转的角度。 通过上述步骤,你可以高效、直观地利用Python来描点画三维曲面图,无论是用于学术研究、工业设计还是数据分析。通过对每个步...
ax.set_xlabel('X axis') ax.set_ylabel('Y axis') ax.set_zlabel('Z axis') ax.set_title('3D Surface Plot') 显示图形: python plt.show() 完整示例代码: python import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D def f(x, y): return np.sin...
3D 图形需要的数据与等高线图基本相同:X、Y 数据决定坐标点,Z 轴数据决定 X、Y 坐标点对应的高度。与等高线图使用等高线来代表高度不同,3D 图形将会以更直观的形式来表示高度。 为了绘制 3D 图形,需要调用 Axes3D 对象的 plot_surface() 方法来完成。
ax1 = fig.add_subplot(1, 2, 1, projection='3d') # 3D曲面图 ax2 = fig.add_subplot(1, 2, 2) # 等高线投影图 # 绘制3D曲面图 surf = ax1.plot_surface(x, y, z, cmap='viridis', edgecolor='none') ax1.set_xlabel('X axis') ...
plot_surface函数可以根据数据点的z坐标值,为表面上的每个点自动选择颜色。通过设置参数cmap,可以选择不同的颜色映射方案。常用的颜色映射方案包括’jet’、'viridis’和’coolwarm’等。 下面是一个使用’coolwarm’颜色映射的例子: importnumpyasnpimportmatplotlib.pyplotaspltfrommpl_toolkits.mplot3dimportAxes3D# 生...
fig=plt.figure()ax=fig.add_subplot(111,projection='3d') 1. 2. 绘制三维曲面: ax.plot_surface(x,y,z,cmap='viridis') 1. 添加标题和标签: ax.set_title('3D Surface Plot')ax.set_xlabel('X')ax.set_ylabel('Y')ax.set_zlabel('Z') ...