收藏本站 劰载中...网站公告 | 吾爱海洋论坛交流QQ群:835383472

怎么使用几行Matlab代码绘制地图?

[复制链接]
1 M map介绍

M map工具包是Matlab绘制地图常用的工具包,打开M map官网的展览馆可以看到各种样式的地图。


! e" g% {8 @: @; C* {/ \                               
登录/注册后可看大图

从展览馆里点击自己喜欢的图表,就能看到绘制图片的相应代码,直接copy代码到Matlab script里面,run一下就能直接运用,整个过程只需三秒,心动不如行动,让我们直接开始!

2 M Map安装
  • 下载M_map包

  • Matlab配置包。点击Add with Subfolders,选择刚下载并解压的M_map包。

    ( w9 a1 M2 L$ V# g, T* M

6 q) ~# _9 |3 E% ?: V
                               
登录/注册后可看大图

7 w" i% Z' z- [# ?) y
                               
登录/注册后可看大图

3 绘图

从官网中Gallery选择你需要的样式地图,复制代码,放入Matlab新建的Script中,run即可。

这里以水深地图作为例子

  1. <p style="text-indent: 2em;">[hide]</p><p style="text-indent: 2em;">m_proj('lambert','long',[-160 -115],'lat',[32 60]); % 选择投影地图与图片经纬度范围</p><p style="text-indent: 2em;">m_etopo2('contourf',[-7000:1000:-1000 -500 -200 0 ],'edgecolor','none');  % 绘制水深数据</p><p style="text-indent: 2em;">m_gshhs('lc','patch', [.7 .7 .7], 'edgecolor','none');    % 绘制海岸线</p><p style="text-indent: 2em;">m_grid('linest','none','tickdir','out','box','fancy','fontsize',16);  % 绘制经纬度网格</p><p style="text-indent: 2em;">colormap(m_colmap('blues', 20));  % 设置水深色标</p><p style="text-indent: 2em;">% 图片保存print(gcf, '-dtiffn', '-r300', 'bathymetry_example');</p><p style="text-indent: 2em;">[/hide]</p>
复制代码

& O) Q6 g- l0 y1 A1 q7 j( n

运行这几行主要的代码就可以获得一幅简单的水深地图。


" e' x/ D% i& ]& c1 x2 x                               
登录/注册后可看大图

Notes

在官方文档中的How to get M_Map部分点击9.3就可以直接跳到水深数据的配置介绍文档,点击8.6就可以跳到高分辨率的海岸线配置介绍。不想看英文的看我下面增加的Adding部分。


- r. Y/ M" g8 m7 r! h7 d                               
登录/注册后可看大图

Adding: matlab中高分辨率海岸线和水深具体配置高分辨率海岸线配置
  • 下载:高分辨率海岸线下载link,这里选择gshhg-bin压缩包

  • 文件解压到相应路径:这里找到m_map包里面的private文件夹,把高清岸线解压进去


    ( L$ `: g% r' V, X' Y; J1 }

3 I) m9 l7 k; x
                               
登录/注册后可看大图

3. m_map包中m_gshhs.m函数文件默认的路径一般是./private文件夹,如果想查看的话,一个简单的方法是:
6 O5 [# q' D& k1 }4 Va. 在matlab里面的命令窗口输入m_gshhs,然后右键选择open selection。

9 Z8 L2 w0 V2 R
                               
登录/注册后可看大图

b.打开就可以查看函数默认的路径。

. F# p7 n# b. k1 g" Y6 `0 V6 Q
                               
登录/注册后可看大图

高清水深配置
  • 下载高清水深数据:m_map官网给出的是NOAA官方的etopo1(点击下载)数据。

  • 配置m_etopo2函数:方法与上面查看m_gshhs.m函数默认路径类似。  h2 K0 s8 |" N8 i
    a. 在matlab里面的命令窗口输入m_etopo2,然后右键选择open selection。


    , Z0 t; z! P( P! q


7 F' K0 u# R) @8 \9 F$ h5 X                               
登录/注册后可看大图

b. 更改默认路径为刚下载并解压之后的etopo1文件夹路径,注意文件夹最后以'/'结尾

' R4 y. q+ G- g! q# j7 z
                               
登录/注册后可看大图

至此,两个文件夹配置均已完成。

文章中所有代码均上传到我的github中,有需要可以直接git clone.


回复

举报 使用道具

相关帖子

全部回帖
暂无回帖,快来参与回复吧
懒得打字?点击右侧快捷回复 【吾爱海洋论坛发文有奖】
您需要登录后才可以回帖 登录 | 立即注册
bason
活跃在2022-10-29
快速回复 返回顶部 返回列表