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

[复制链接]
1 M map介绍

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


! q1 D& ?9 E1 v1 D! g, }* Y6 B/ Q5 g                               
登录/注册后可看大图

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

2 M Map安装
  • 下载M_map包

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

    / d5 H' f0 m5 o9 p9 I+ p# u2 `; G/ n

/ m; U8 j1 @/ c# c0 h# I
                               
登录/注册后可看大图


# |$ V: c  p# T5 _. K                               
登录/注册后可看大图

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>
复制代码

/ Z- y' m1 R" e- F8 N

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

9 f1 f, `) A% V4 ?: B7 H
                               
登录/注册后可看大图

Notes

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

( U4 R8 @1 t# ^) W  Q' n+ x
                               
登录/注册后可看大图

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

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


    ' l& w' K! d& p) G$ S2 A1 f


1 E8 O: b+ O0 r% K1 v! G2 P" m+ q8 w                               
登录/注册后可看大图

3. m_map包中m_gshhs.m函数文件默认的路径一般是./private文件夹,如果想查看的话,一个简单的方法是:
) a# A" R  n5 ~2 }7 n2 \a. 在matlab里面的命令窗口输入m_gshhs,然后右键选择open selection。


0 j$ J/ ^6 L5 z0 y: S# c1 f. m                               
登录/注册后可看大图

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

  {. x8 V* `, Q
                               
登录/注册后可看大图

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

  • 配置m_etopo2函数:方法与上面查看m_gshhs.m函数默认路径类似。* ]  u5 p+ N( U5 o7 s( c# M1 B3 p3 Z
    a. 在matlab里面的命令窗口输入m_etopo2,然后右键选择open selection。

    % s$ l* @, _1 c5 g+ F

3 M6 B/ D  L$ B8 m9 u9 j
                               
登录/注册后可看大图

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

" z0 J4 d5 U3 G/ _& M3 h
                               
登录/注册后可看大图

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

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


回复

举报 使用道具

相关帖子

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