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

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

[复制链接]
1 M map介绍

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


+ c. ?! [' x1 C4 R6 E5 C                               
登录/注册后可看大图

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

2 M Map安装
  • 下载M_map包

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

    4 B' q0 P4 `* K- ~1 j2 ~2 D/ q


4 n- f* j9 h( O                               
登录/注册后可看大图

. l2 \5 R) }6 b1 I
                               
登录/注册后可看大图

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>
复制代码
. q$ s8 v7 w( k

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


* |5 N7 h! c- c& d  A                               
登录/注册后可看大图

Notes

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

# R+ H% r2 C6 x  A! w
                               
登录/注册后可看大图

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

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


    / s$ J( v5 _! B  @

5 I9 X! G* F5 I3 b
                               
登录/注册后可看大图

3. m_map包中m_gshhs.m函数文件默认的路径一般是./private文件夹,如果想查看的话,一个简单的方法是:$ |: N0 G5 w) F2 j
a. 在matlab里面的命令窗口输入m_gshhs,然后右键选择open selection。

' s( F) N8 s' I6 ^) T7 [( l
                               
登录/注册后可看大图

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


, N/ z. z/ B: u  |9 W* y/ |6 S. [                               
登录/注册后可看大图

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

  • 配置m_etopo2函数:方法与上面查看m_gshhs.m函数默认路径类似。) S+ k' Q, r" z8 K
    a. 在matlab里面的命令窗口输入m_etopo2,然后右键选择open selection。


    9 Q8 C. w5 Z! I3 N

4 n" }1 b0 c2 `* O9 T) a
                               
登录/注册后可看大图

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


  A9 n4 Q: f9 _7 o9 Q                               
登录/注册后可看大图

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

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


回复

举报 使用道具

相关帖子

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