温馨提示×

Matplotlib中怎么绘制三维散点图和曲面图

小亿
127
2024-05-20 19:29:37
栏目: 编程语言

要绘制三维散点图和曲面图,可以使用Matplotlib中的mplot3d模块。下面分别介绍如何绘制三维散点图和曲面图:

  1. 绘制三维散点图:
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import numpy as np

# 生成随机数据
x = np.random.rand(100)
y = np.random.rand(100)
z = np.random.rand(100)

# 创建一个三维坐标轴
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')

# 绘制散点图
ax.scatter(x, y, z)

# 设置坐标轴标签
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Z')

plt.show()
  1. 绘制曲面图:
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import numpy as np

# 生成数据
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))

# 创建一个三维坐标轴
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')

# 绘制曲面图
ax.plot_surface(X, Y, Z, cmap='viridis')

# 设置坐标轴标签
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Z')

plt.show()

以上代码分别展示了如何绘制三维散点图和曲面图。在绘制曲面图时,首先使用np.meshgrid()生成网格数据,然后使用ax.plot_surface()绘制曲面图。

0