在 Matplotlib 的 3D 绘图中为向量添加箭头

matplotlibserver side programmingprogramming更新于 2025/8/26 7:22:17

要在 3D matplotlb 绘图中绘制箭头向量,我们可以采取以下步骤 −

  • 创建一个二维数组,其中x, y, z, u, v和w分别为箭头位置的坐标和箭头向量的方向分量。

  • 使用figure()方法创建一个新图形或激活一个现有图形。

  • 添加一个"~.axes.Axes"使用 add_subplot() 方法将子图添加到图中。

  • 使用 quiver()  方法绘制箭头的三维场。

  • 使用 ylim、xlim、zlim 限制坐标轴的范围。

  • 设置绘图标题。

  • 要显示图形,请使用  show() 方法。

示例

import matplotlib.pyplot as plt
import numpy as np
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True
soa = np.array([[0, 0, 1, 1, -2, 0], [0, 0, 2, 1, 1, 0], [0, 0, 3, 2, 1, 0], [0, 0, 4, 0.5, 0.7, 0]])
X, Y, Z, U, V, W = zip(*soa)
fig = plt.figure()
ax = fig.add_subplot(projection='3d')
ax.quiver(X, Y, Z, U, V, W, color='red')
ax.set_xlim([-1, 0.5])
ax.set_ylim([-1, 1.5])
ax.set_zlim([-1, 8])
ax.set_title("Vectors")
plt.show()

输出


相关文章