使用 quiver 绘制二维矢量图

Use quiver to plot a 2D vector map

我有一组坐标对 (x, y),我想使用 quiver 绘制这组坐标。我试图检查其他相关问题,但我仍在为此苦苦挣扎。

假设我想用 x 和 y 坐标的两个数组绘制 4 个向量:

x = arange(0, 3)
y = arange(0, 3)

# vectors x coordinate values
fx = (0, 1, 1, 2)    
# vectors y coordinate values
fy = (1, 0, 1, 2)

X, Y = meshgrid(x, y)
Q = quiver(X, Y, fx, fy)

结果不是4个而是9个向量,为什么?

您可以将四个一维数组传递给 plt.quiver:

import numpy as np
import matplotlib.pyplot as plt

x = np.arange(0, 4)
y = np.arange(0, 4)

# vectors x coordinate values
fx = (0, 1, 1, 2)    
# vectors y coordinate values
fy = (1, 0, 1, 2)


Q = plt.quiver(x, y, fx, fy)
plt.xlim(-1, 4)
plt.ylim(-1, 4)

plt.show()

产量