我正在尝试在 matplotlib 中创建一个倒钩向量图并将一些颜色映射到特定的幅度:例如,将幅度在 10 到 20 之间的向量绘制为蓝色,将 20 到 30 之间的向量绘制为 rgb(0,15,40),等等。barbs 和 quiver 函数的文档(它们相似)提到了 C 输入 arg:
倒钩(X, Y, U, V, C, **kw)
论据:
X, Y:倒钩位置的 x 和 y 坐标(默认为倒钩头;参见 pivot kwarg)
U, V:给出倒钩轴的 x 和 y 分量
C:用于将颜色映射到倒钩的可选数组
但是,这很模糊,在谷歌搜索之后,我对如何以特定方式使用这个颜色数组并没有更深入的了解。我设法发现,通过将 C 设置为向量幅度数组并指定“cmap”kwarg,它会将倒钩映射到指定的颜色图,如下面的示例代码所示。然而,这不是我想要的。我想控制特定数量级的颜色。任何帮助,将不胜感激。
示例代码:
from matplotlib import pyplot as plt
from numpy import arange,meshgrid,sqrt
u,v = arange(-50,51,10),arange(-50,51,10)
u,v = meshgrid(u,v)
x,y = u,v
C = sqrt(u**2 + v**2)
plt.barbs(x,y,u,v,C,cmap=plt.cm.jet)
plt.show()
生成的情节图片链接:(抱歉不能直接发布图片)