簡體   English   中英

matplotlib中帶有顫動圖的自定義顏色欄

[英]Custom colorbar with quiver plot in matplotlib

我正在嘗試生成一個顫抖圖,矢量長度范圍從0.到15.,並且我想使用灰色的顏色圖,但是從例如半范圍開始,例如0.已經是灰色和15。是黑色的。 到目前為止,我所做的是:

cmap = cm.get_cmap('Greys', 10)

norm = matplotlib.colors.Normalize(vmin=-5.,vmax=15.,clip=False)
Q = ax.quiver(xi, yi, zix, ziy, lengths * 1000., units='inches', width=0.008, headwidth=6, headlength=7, scale=5,
              scale_units='inches',cmap=cmap, norm=norm)
cb = plt.colorbar(Q, cax=ax3, ticks=[0.0, 3.0, 6.0, 9.0, 12.0, 15.0], format='%.1f', norm=norm)

顏色范圍是正確的,但是整個顏色圖會顯示在顏色欄中,即從白色開始。 我想念什么?

“灰色”顏色圖從白色開始,然后變為黑色。 由於標准化,-5為白色,而15為黑色。

您似乎真正想要的是對vmin=0,vmax=15.的歸一化vmin=0,vmax=15. 和已經以灰色開頭的顏色圖:

import matplotlib.colors
norm = matplotlib.colors.Normalize(vmin=0,vmax=15.,clip=False)
cmap = matplotlib.colors.ListedColormap(plt.cm.Greys(np.linspace(0.25,1,10)), "name")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM