1.前言
m_tbase是matlab的地图工具包m_map的一个内置脚本,其提供了ETOPO的全球5'X5'的分辨率高程数据,根据命令[ELEV,LONG,LAT]=m_tbase([LONG_MIN LONG_MAX LAT_MIN LAT_MAX])可以获得指定[LONG_MIN LONG_MAX LAT_MIN LAT_MAX]范围内的高程数据。本文通过m_tbase获得了全球范围的高程数据,并将海洋部分掩膜掉,只可视化陆地的高程数据。通过本文的操作也可以实现陆地点与海洋点的简单区分。
2.全球高程数据
%% 绘制全球高程水深
[ELEV,LONG,Lat]=m_tbase([-180 180 -90 90]);%提取全球高程数据m_proj('robinson') ;m_pcolor(LONG,Lat,ELEV);
m_grid('linest','none','yticklabels','','xticklabels','')set(gcf,'color','w')set(gcf,'GraphicsSmoothing','off');%关闭图像平滑
3.绘制陆地地形高程图
绘制陆地地形高程图,主要是在第2步的基础上,将高程小于等于0的部分掩膜掉即可。
%% 陆地地形高程Land=ELEV;Land(Land<=0)=nan; %掩膜掉高程数据<=0的即可figurem_proj('robinson')m_pcolor(LONG,Lat,Land);m_grid('linest','none','yticklabels','','xticklabels','')colorbarcolormap('summer')set(gcf,'color','w')set(gcf,'GraphicsSmoothing','off');%关闭图像平滑
4.绘制全球水深图
绘制陆地地形高程图,主要是在第2步的基础上,将高程大于0的部分掩膜掉即可。
%% 全球水深图Sea=ELEV;Sea(Sea>0)=nan; %掩膜掉高程数据>0的即可figurem_proj('robinson')m_pcolor(LONG,Lat,Sea);m_grid('linest','none','yticklabels','','xticklabels','')colorbarcolormap('winter')set(gcf,'color','w')set(gcf,'GraphicsSmoothing','off');%关闭图像平滑