data_list = ['albedo_01','albedo_02','albedo_03','albedo_04','tbb_11','tbb_12','tbb_13','SAZ'] lat = 39.933 lon = 116.317
Xi = int(np.floor((60-lat)/ 0.02)) Yi = int(np.floor((lon-80)/ 0.02))
dicData = {key: value[:].data for key, value in nc_data.variables.items() if key in data_list} data = {key: value[Xi,Yi] for key, value in dicData.items() if key in data_list} # 获取40x40的网格数据 data_tif = {key: value[Xi-20:Xi+20,Yi-20:Yi+20] for key, value in dicData.items()} band1 = data_tif.get('albedo_01')
import matplotlib.pyplot as plt from colormaps import parula
plt.rcParams['font.family'] = 'Times New Roman' cmap = parula
fig,ax = plt.subplots(figsize=(5,4),dpi=100,facecolor='w') pcm = ax.imshow(band1,cmap=cmap,vmax=max_v,vmin=min_v) ax.tick_params(labelsize=20) ax.set_xticks(np.arange(0, 40, step=10)) ax.set_yticklabels(labels = [-10, 40, 30, 20, 10]) for text in ax.get_xticklabels()+ax.get_yticklabels(): text.set_fontweight('bold') ax.set_xlabel('longitude',fontsize=22,fontweight='bold') ax.set_ylabel('latitude',fontsize=22,fontweight='bold') print(ax.get_yticks()) print(ax.get_xticks())
cb = fig.colorbar(pcm,ax=ax,aspect=10) #cb.outline.set_visible(False) cb.ax.tick_params(direction='in',labelsize=15) for t in cb.ax.get_yticklabels(): t.set_fontweight('bold') # 添加文本信息 ax.text(.5,1.04,'Albedo01',transform = ax.transAxes,fontsize=20,fontweight='bold',ha='center',va='center')