MATLAB绘制WRF模拟区域和局部的放大

MATLAB绘制WRF模拟区域和局部的放大
MATLAB绘制WRF模拟区域和局部的放大_第1张图片
MATLAB绘制WRF模拟区域和局部的放大_第2张图片

clc;clear;close all
filename = ‘ETOPO2v2g_f4.nc’;
ncdisp(filename);%
lon=double(ncread(filename,‘x’));
lat=double(ncread(filename,‘y’));
h=double(ncread(filename,‘z’));
[x,y]=meshgrid(lon,lat);
x=x’;y=y’;
%% 调取颜色
%% 微信公众号:海洋与大气科学
cmap=colormore_57(500);
num=100;
figure%% 分辨率太高了,运行太慢了。
inter=1;inter1=1;% inter越大运行越快。
set(gcf,‘color’,‘w’,‘position’,[50 50 1200 1000])
axes(‘position’,[0.05 0.1 0.45 0.8])
pcolor(x(1:inter:end,1:inter1:end),y(1:inter:end,1:inter1:end),h(1:inter:end,1:inter1:end));
shading interp
maskMap(‘bou2_4p.shp’,true,‘lon’,[98 110],‘lat’,[25 35],‘linewidth’,0.5, ‘edgecolor’,‘b’)
caxis([0,5200])
colormap(cmap);% 调整
hold on
ma=shaperead(‘bou2_4p.shp’);
line([ma(.X],[ma(.Y],‘color’,‘k’);%绘制范围内的地图
% d02 的框
hold on
line([100 103],[28.5 28.5],‘linewidth’,1.5,‘color’,‘k’)
line([100 103],[31.5 31.5],‘linewidth’,1.5,‘color’,‘k’)
line([100 100],[28.5 31.5],‘linewidth’,1.5,‘color’,‘k’)
line([103 103],[28.5 31.5],‘linewidth’,1.5,‘color’,‘k’)
line([103 110],[28.5 25],‘linewidth’,1.5,‘color’,‘k’)
line([103 110],[31.5 35],‘linewidth’,1.5,‘color’,‘k’)
text(99,34.5,‘d01’,‘fontsize’,20,‘fontname’,‘time news roman’,‘fontweight’,‘bold’)
title(‘中国地形’,‘fontsize’,20,‘fontname’,‘time news roman’,‘fontweight’,‘bold’)
set(gca,‘xtick’,[99:2:110],‘xticklabel’,[99:2:110],‘fontsize’,14,‘fontname’,‘time news roman’,‘fontweight’,‘bold’,‘linewidth’,3)
xlabel(‘微信公众号:海洋与大气科学’,‘fontsize’,20,‘fontname’,‘time news roman’,‘fontweight’,‘bold’)
box on
axis([98 110 25 35])
% 区域放大
axes(‘position’,[0.51 0.27 0.45 0.46])
pcolor(x(1:inter:end,1:inter1:end),y(1:inter:end,1:inter1:end),h(1:inter:end,1:inter1:end));
shading interp
caxis([0,5200])
colormap(cmap);% 调整
hold on
text(100.2,31.3,‘d02’,‘fontsize’,20,‘fontname’,‘time news roman’,‘fontweight’,‘bold’)
axis([100 103 28.5 31.5])
box on
set(gca,‘yaxislocation’,‘right’,‘fontsize’,14,‘fontname’,‘time news roman’,‘fontweight’,‘bold’,‘linewidth’,3)
title(‘黑框区域放大图’,‘fontsize’,20,‘fontname’,‘time news roman’,‘fontweight’,‘bold’)
xlabel(‘微信公众号:海洋与大气科学’,‘fontsize’,20,‘fontname’,‘time news roman’,‘fontweight’,‘bold’)
% colorbar
axes(‘position’,[0.05 0.01 0.8 0.01])
col_h=colorbar(‘horiz’);
set(col_h,‘position’,[0.1 0.10 0.8 0.05],‘fontsize’,15,‘fontname’,‘time news roman’,‘fontweight’,‘bold’,…
‘Ticks’, [0:0.1:1 ],‘TickLabels’,[0:500:5200])
set(get(col_h,‘xlabel’),‘string’,‘地形高度 m’,‘fontsize’,20,‘fontname’,‘time news roman’,‘fontweight’,‘bold’)
colormap(cmap);% 调整
set(gca,‘xtick’,[],‘xticklabel’,[],‘yticklabel’,[],‘ytick’,[],‘ycolor’,‘w’,‘xcolor’,‘w’)
export_fig(‘matlab绘制WRF模拟区域和局部放大图.png’,‘-r300’)
%% 改变地形高度的位置
%% 调取颜色
%% 微信公众号:海洋与大气科学
cmap=colormore_57(500);
num=100;
figure%% 分辨率太高了,运行太慢了。
inter=1;inter1=1;% inter越大运行越快。
set(gcf,‘color’,‘w’,‘position’,[50 50 1200 1000])
axes(‘position’,[0.05 0.1 0.45 0.8])
pcolor(x(1:inter:end,1:inter1:end),y(1:inter:end,1:inter1:end),h(1:inter:end,1:inter1:end));
shading interp
maskMap(‘bou2_4p.shp’,true,‘lon’,[98 110],‘lat’,[25 35],‘linewidth’,0.5, ‘edgecolor’,‘b’)
caxis([0,5200])
colormap(cmap);% 调整
hold on
ma=shaperead(‘bou2_4p.shp’);
line([ma(.X],[ma(.Y],‘color’,‘k’);%绘制范围内的地图
% d02 的框
hold on
line([100 103],[28.5 28.5],‘linewidth’,1.5,‘color’,‘k’)
line([100 103],[31.5 31.5],‘linewidth’,1.5,‘color’,‘k’)
line([100 100],[28.5 31.5],‘linewidth’,1.5,‘color’,‘k’)
line([103 103],[28.5 31.5],‘linewidth’,1.5,‘color’,‘k’)
line([103 110],[28.5 25],‘linewidth’,1.5,‘color’,‘k’)
line([103 110],[31.5 35],‘linewidth’,1.5,‘color’,‘k’)
text(99,34.5,‘d01’,‘fontsize’,20,‘fontname’,‘time news roman’,‘fontweight’,‘bold’)
title(‘中国地形’,‘fontsize’,20,‘fontname’,‘time news roman’,‘fontweight’,‘bold’)
set(gca,‘xtick’,[99:2:110],‘xticklabel’,[99:2:110],‘fontsize’,14,‘fontname’,‘time news roman’,‘fontweight’,‘bold’,‘linewidth’,3)
xlabel(‘微信公众号:海洋与大气科学’,‘fontsize’,14,‘fontname’,‘time news roman’,‘fontweight’,‘bold’)
box on
axis([98 110 25 35])
% 区域放大
axes(‘position’,[0.51 0.27 0.45 0.46])
pcolor(x(1:inter:end,1:inter1:end),y(1:inter:end,1:inter1:end),h(1:inter:end,1:inter1:end));
shading interp
caxis([0,5200])
colormap(cmap);% 调整
hold on
text(100.2,31.3,‘d02’,‘fontsize’,20,‘fontname’,‘time news roman’,‘fontweight’,‘bold’)
axis([100 103 28.5 31.5])
box on
set(gca,‘yaxislocation’,‘right’,‘fontsize’,14,‘fontname’,‘time news roman’,‘fontweight’,‘bold’,‘linewidth’,2)
title(‘黑框区域放大图’,‘fontsize’,20,‘fontname’,‘time news roman’,‘fontweight’,‘bold’)
xlabel(‘微信公众号:海洋与大气科学’,‘fontsize’,14,‘fontname’,‘time news roman’,‘fontweight’,‘bold’)
% colorbar
axes(‘position’,[0.05 0.01 0.8 0.01])
col_h=colorbar(‘horiz’);
set(col_h,‘position’,[0.1 0.10 0.8 0.05],‘fontsize’,15,‘fontname’,‘time news roman’,‘fontweight’,‘bold’,…
‘Ticks’, [0:0.1:1 ],‘TickLabels’,[0:500:5200])
% set(get(col_h,‘xlabel’),‘string’,‘地形高度 m’,‘fontsize’,20,‘fontname’,‘time news roman’,‘fontweight’,‘bold’)
colormap(cmap);% 调整
set(gca,‘xtick’,[],‘xticklabel’,[],‘yticklabel’,[],‘ytick’,[],‘ycolor’,‘w’,‘xcolor’,‘w’)
text(0.45,06,‘地形高度 m’,‘fontsize’,20,‘fontname’,‘time news roman’,‘fontweight’,‘bold’);
export_fig(‘matlab绘制WRF模拟区域和局部放大图2.png’,‘-r300’)

你可能感兴趣的:(matlab,开发语言)