基于m_tbase的全球水深地形高程数据可视化

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');%关闭图像平滑

Figure1 全球高程水深图

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');%关闭图像平滑

Figure2 全球陆地高程可视化

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');%关闭图像平滑

Figure3 全球水深可视化
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容