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

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

[复制链接]
1 M map介绍

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


  C, s4 T$ y) k0 A% E3 m                               
登录/注册后可看大图

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

2 M Map安装
  • 下载M_map包

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

    + S% B# I+ {3 }( W1 O


3 i- i* Y7 r" s7 `- V# r. m                               
登录/注册后可看大图

$ D% i2 m" q0 d2 x
                               
登录/注册后可看大图

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>
复制代码
2 V: v5 Z" b) n; C7 ~3 Y7 p* M

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

/ n' b% V. T" }) u4 r1 X
                               
登录/注册后可看大图

Notes

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

6 a( s& P. u, C; h
                               
登录/注册后可看大图

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

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

    6 ]2 X% ]! ?2 o" I

2 A  H  S6 U+ Q# U- t4 h
                               
登录/注册后可看大图

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


8 B4 Z5 g5 j' S( Z9 H                               
登录/注册后可看大图

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

, s2 H/ ?! C- l! l+ }
                               
登录/注册后可看大图

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

  • 配置m_etopo2函数:方法与上面查看m_gshhs.m函数默认路径类似。$ |- o  e5 J# F1 g. ^# i- j
    a. 在matlab里面的命令窗口输入m_etopo2,然后右键选择open selection。

    9 w5 N2 u6 t+ a  N: g$ z


7 `: V. q* a" o8 F" h7 I                               
登录/注册后可看大图

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

. E) J+ o7 e% u2 Q
                               
登录/注册后可看大图

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

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


回复

举报 使用道具

相关帖子

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