文章预览
颜色映射的问题与方法 也是之前的几个后台留言,与最近我遇到的一个关于颜色映射的小技巧。 第一个问题:自制颜色条在contourf中不能正确的显示 使用者制作了一个自定义的颜色条,在contourf颜色使用时,给出的参数不全,导致颜色与数值的对应不正确,我们以降水自制色条为例: color_levels=np.array([ 0.1 , 10 , 25 , 50 , 100 , 250 , 500 ]) color_list=[ '#A6F28F' , '#3DBA3D' , '#61BBFF' , '#0000FF' , '#FA00FA' , '#800040' ] rain_colormap=mcolors.ListedColormap(color_list) norm=mcolors.BoundaryNorm(color_levels,rain_colormap.N) 如果仅给出色条,不给levels和norm参数,数值与颜色会被自适应如下所示,显然数值与颜色与我们想象中的不对应。 x=np.arange( -10 , 10.5 , 0.5 ) y=x X,Y=np.meshgrid(x,y) Z=np.sqrt(X** 2 +Y** 2 ) pc=plt.contourf(X,Y,Z,cmap=rain_colormap) plt.colorbar(pc) 若仅给出cmap与norm参数,也会被自适应掉,导致数值与颜
………………………………