matplotlib 流线图的颜色边界

qhhrdooz  于 2023-10-24  发布在  其他
关注(0)|答案(1)|浏览(92)

我需要创建一个流线图,用一个颜色条表示给定线路的速度。问题是,我的速度数据中有2个点的值过大,完全重新调整了颜色条的比例,我不能真正删除它们。
我已经寻找方法来防止它不修改数据(如与cmin,Vmin,Vmax...),但它似乎streamplot没有这个功能...
那么有没有办法在流图中给cmap添加限制呢?

wko9yo5t

wko9yo5t1#

我想这个应该会有帮助。

## import matplotlib 
matplotlib as mpl

## Set colormap for the colorbar
cmap = mpl.cm.rainbow

#### Use norm to set you vmax and vmin
norm = mpl.colors.Normalize(vmin=0, vmax=35)

## Pass norm as argument while plotting
strm = ax.streamplot(x=ds["longitude"],y=ds["latitude"], u=ds["u"], v=ds["v"], color=ds.u.values, linewidth=1, cmap='rainbow', density=0.6, norm=norm)

fig.colorbar(strm.lines, label = 'wind speed [m$^2$]', shrink=0.6)

相关问题