找回密码
 注册
关于网站域名变更的通知
查看: 687|回复: 1
打印 上一主题 下一主题

怎样给matlab添加M_map工具箱

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-4-21 10:49 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 mytomorrow 于 2020-4-21 10:50 编辑
, ^0 J% r9 `, f& _2 {7 ?! E. h2 h1 }$ k* W% o! O

首先试了matlab自带的worldmap,感觉画出来的图形不尽如人意,比较杂乱。如下图。

4 q- ]/ O8 |3 t- J9 L) i

  S( D7 U* s! d2 @- M8 ]) Q查阅了些资料,请教了Liangjing,一致推荐m_map。为了达到想要的效果,这次只要不再偷懒,下载M-Map工具箱并进行安装。所幸过程比较顺利,现记录如下,回头把画出的效果图再添上。其他matlab的toolbox安装,也可参考进行。

----------------------------------------

M_map的User Guide教的,matlab安装目录请自行参考自己的电脑。

1、将M_map.zip工具箱内容解压缩,至'C: Program FilesMATLABR2009atoolboxmatlabm_map'

2、找到'C: Program FilesMATLABR2009atoolboxlocalpathdef.m'文件,打开,并把1中的路径添加到该文件中,保存。

matlabroot,'toolboxmatlabplottools;', ...7 Z( Z! b# e9 c% L
matlabroot,'toolboxlocal;', ...
$ v8 I: u2 B: _matlabroot,'toolboxsharedcontrollib;', ...4 X3 R# I  ^7 h
matlabroot,'toolboxshareddastudio;', ...
, E; e" [( P2 ]2 Y# Ymatlabroot,'toolboxmatlabdatamanager;', ...; P7 e2 F' q* {! U$ X% O: p( m
matlabroot,'toolboxmatlabm_map',...           %这里不需加分号“;”4 z& L. D, N. A- n
%%% END ENTRIES %%%

3、运行 rehash toolboxcache 命令,完成工具箱加载

>>rehash toolboxcache

========以上,完成加载==============================

========以下,测试是否成功===========================

test1:运行

>>what m_map

得到的结果类似dos中的dir命令,即可。

M-files in directory C: Program FilesMATLABR2009atoolboxmatlabm_map

Contents        m_grid          m_ll2xy         m_scale        
0 n+ A0 Q2 x3 A- K1 cm_coast         m_gshhs         m_lldist        m_tba2b        4 ?' m& f; r6 D
m_contour       m_gshhs_c       m_mag2geo       m_tbase        " w' k) g, A$ H* A2 ~6 a0 q
m_contouRF      m_gshhs_f       m_patch         m_text         / q2 T3 i& D7 D( G/ _/ s) h- N
m_coord         m_gshhs_h       m_pcolor        m_track        ; k1 |! M; B: x1 \
m_demo          m_gshhs_i       m_plot          m_ungrid       : u2 Y6 s6 h, [) t
m_elev          m_gshhs_l       m_plotbndry     m_usercoast   
- O; y$ [8 h3 ^3 b  `8 om_etopo2        m_hatch         m_proj          m_vec          ! E. |6 i) W0 I; ^
m_fdist         m_idist         m_quiver        m_xy2ll        & x$ l& V" M0 P1 [! D8 j& w# c
m_geo2mag       m_legend        m_range_ring    m_xydist      
! ]8 @& k; X# h. r8 ]% L+ e" Rm_geodesic      m_line          m_ruler        

test2:测试demo

>>m_proj('oblique mercator');
  e, f. n6 A* e+ f5 `; Jm_coast;
! O. G4 O7 d% J6 |- i8 r, W: {m_grid;

# a1 W( |) \4 h
  D9 c, ^3 P1 S. G, g- I

------------------------------

m_map工具箱画出的图(edit at 23:00 2011-04-28)


) Y7 \6 X8 r# M' S9 M& f
* o2 a. u1 C3 q; f/ X/ b

9 O- F  X6 f( `9 P
%--------------------------------------------------------------------

figure; t( h6 W: i. b5 g  [1 P+ w
P=A11;%%%%%%%%%%%%%%%这个就是你取出来的GRACE数据 如a(:,: )=grace(i,:,: );
- h0 I9 G0 c; l1 M, Nlo=0.5:359.5;
* B5 y% w# E0 U( Cla=-89.5:89.5;
9 q' h4 f" s* @4 V, |[lo,la]=meshgrid(lo,la);: G: Z3 a2 M- m  Q) s! e3 U
m_proj('Equidistant Cylindrical','lon',[0.5,359.5],'lat',[-89.5,89.5]);
) A+ x1 d2 Y; a) T5 S9 ?, `m_pcolor(lo,la,P);hold on;
6 L2 W9 W% K2 `5 L0 Qshading flat;
0 `* d/ r2 A) Sm_grid('box','fancy');
* B: c* G+ r( z8 D& _2 y3 l$ T0 chold on;

-----------------------画出的图示-----------------------


# Z# [7 {8 H0 S4 G, m6 X
- s: y. ~- }: b' k  y

====================================

matlab的m_map工具箱及添加行政边界底图


# H5 Y( Q' ?0 K9 n2 k7 t

对习惯使用matlab的人来说,m_map是一个很好的绘制地图的免费工具箱。可以选择的投影种类近20种,包括常用的Lambert、 Mercator、UTM等。可以测量距离( m_lldist, m_xydist ),绘制等值线(m_contour),等值线填充图(m_contourf),矢量图(m_quiver),栅格图(m_pcolor)等,并与相应的 matlab函数语法类似,很容易使用。2 u5 ?) X7 R4 {$ \0 ]) {
m_map通过m_coast提供1/4 degree分辨率的全球海岸线,通过下载GSHHS可以得到更高分辨率的海岸线数据。7 c3 {- t5 k# P5 Z- f0 q
除海岸线外,还可以利用已有的GIS行政边界资料,在地图上添加行政边界底图。具体作法为:下载.shp格式的行政边界文件( 国家基础地理信息系统的下载服务),将下 载的.shp文件通过mapinfo转换成.dxf文件,利用已编译好的fortran程序,读取经纬度信息,输出.dat文件。导入matlab空间, 可以直接m_plot,也可以调用m_plotbndry()。
8 P5 z* J. x9 }0 p" b  m通过以上方法可以实现.shp在matlab绘图中的应用。& w- T2 Z9 M( Z+ m* a5 c, v

) w3 {$ k6 M& @% i7 w! t, A. i! E/ u2 e+ D  V- j


6 H" J6 c. Q( E9 i& ]

该用户从未签到

2#
发表于 2020-4-21 13:34 | 只看该作者
给matlab添加M_map工具箱
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-24 05:51 , Processed in 0.156250 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表