以中国为例,将PM2.5格网数据画在地图上,后面有成图
clc;clear;
% 加载格网数据,以PM2.5的NC文件为例,加载经度、纬度和PM2.5
lat = ncread('F:\predict_NOTH\data-day\pm\1月数据_WJ\CHAP_PM2.5_D1K_20200101_V4.nc','lat');
lon = ncread('F:\predict_NOTH\data-day\pm\1月数据_WJ\CHAP_PM2.5_D1K_20200101_V4.nc','lon');
PM = ncread('F:\predict_NOTH\data-day\pm\1月数据_WJ\CHAP_PM2.5_D1K_20200101_V4.nc','PM2.5');
% 我这个PM2.5数据是转置的,用不到就注释掉
PM = PM';
% 确定格网第一个点和最后一个点的经纬度
h=imagesc([lon(1,1) lon(end,1)],[lat(1,1) lat(end,1)],PM);
% 将nan数据显示为白色
set(h,'alphadata',~isnan(PM));
% 图片显示是反转的,用来转化
set(gca,'YDir','normal');
% 加载中国地区shp文件
fnshp_L='F:\全国省级地级市县市行政区划shp\全国省级地级市县市行政区划shp\bou2_4l.shp';
readl=shaperead(fnshp_L,'UseGeoCoords',true);
geoshow(readl,'Color','k','linewidth',0.7);
% 设置经纬度间隔
set(gca,'Ytick',10:10:60,'Xtick',60:10:140);
xlabel('Longitude');
ylabel('Latitude');
ch = colorbar;
set(get(ch,'title'),'string','PM_{2.5}');