| 
 
	积分1771贡献 精华在线时间 小时注册时间2018-9-3最后登录1970-1-1 
 | 
 
| 
本帖最后由 Edcee3003 于 2020-8-2 08:41 编辑
x
登录后查看更多精彩内容~您需要 登录 才可以下载或查看,没有帐号?立即注册 
  
 今天作图时设置了一个数组,其中0代表clear、1代表clutter、2代表Rain、3代表Cloud、4代表Icecloud,作图发现,因为有些图缺失了部分值(如下图中缺失了Icewater),导致图中没有4这一值,使原来设定的3和4的颜色混了,而且colorbar也会很难看,求助怎么固定其中的值代表的颜色使其不随缺失某个值而发生变化,以下是源码以及问题图与一张正常图示例:    fig = plt.figure(figsize=(20,8))
 ax = plt.subplot(111)
 colors = ['white','aqua','purple','orange','blue']
 bounds = [0,1,2,3,4,5]
 #cmap设置以及normaliza设置
 cmap = mpl.colors.ListedColormap(colors)
 norm = mpl.colors.BoundaryNorm(bounds, cmap.N)
 im = ax.imshow(feature_mask , cmap=cmap , interpolation='none',origin='lower', aspect='auto')
 cbar_bounds = [-0.5, 0.5, 1.5, 2.5, 3.5, 4.5]
 cbar_ticks = [ 0, 1, 2, 3, 4]
 cbar_labels = ['Clear', 'Cloud','Rain','Clutter','Icewater']
 cbar = plt.colorbar(im, boundaries=cbar_bounds, ticks=cbar_ticks)
 cbar.ax.set_yticklabels(cbar_labels, fontsize=16)
 plt.title('Flag, Chirp co-pol '+time_str, fontsize=24)
 plt.savefig('D:\\KAZR_FIG\\'+year_str+'\\'+month_str+'\\Flag_co-pol '+time_str+'.png')
 plt.close('all')
 
 
 问题图   正常图   
 | 
 |