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

matlab如何添加M_map工具箱

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
本帖最后由 pulbieup 于 2020-3-16 10:29 编辑 ; p2 C1 o% A! W+ x" @  r9 f
3 u6 g1 S6 {1 Q2 n# N
之前转载过matlab画世界地图的文章。最近正好用到。首先试了matlab自带的worldmap,感觉画出来的图形不尽如人意,比较杂乱。如下图。
7 Z# \# Y2 m; l: E' L; _( P
4 C- I2 A$ W5 P1 B* A# y8 E
. f+ ^% C" c3 Y. F查阅了些资料,请教了Liangjing,一致推荐m_map。为了达到想要的效果,这次只要不再偷懒,下载M-Map工具箱(http://www.eos.ubc.ca/~rich/map.html)并进行安装。所幸过程比较顺利,现记录如下,回头把画出的效果图再添上。其他matlab的toolbox安装,也可参考进行。
9 K6 \: R$ F% e  {1 {" U" z3 A& ^, L* ~3 y- P- u6 H1 s1 C
----------------------------------------
4 j7 V' s/ j. C! }' c5 M2 ], ^! Y5 n9 c8 K4 j9 i# \# I
M_map的User Guide教的,matlab安装目录请自行参考自己的电脑。! y3 I0 L# d9 g/ I* A5 P" P
9 E6 W+ U  Y6 z6 m5 P- T: V
1、将M_map.zip工具箱内容解压缩,至'C:Program FilesMATLABR2009atoolboxmatlabm_map'
; q7 {, o, M6 m" t6 l: v  d; g
' w) j3 k( k+ }( w1 r! h4 e2、找到'C:Program FilesMATLABR2009atoolboxlocalpathdef.m'文件,打开,并把1中的路径添加到该文件中,保存。
, [2 ~2 U# @/ d2 a7 b# }5 K; O
4 J3 k$ S. A, P( Dmatlabroot,'toolboxmatlabplottools;', ...3 R" S9 M* c  P6 M/ b
matlabroot,'toolboxlocal;', ...
. \4 i' r8 P( A6 l/ }, y6 {matlabroot,'toolboxsharedcontrollib;', ...4 A! v) Y( D% O2 I4 U9 b
matlabroot,'toolboxshareddastudio;', ...8 B% w, f# p# N4 j
matlabroot,'toolboxmatlabdatamanager;', ...
% I- a+ E& M" l, H6 Fmatlabroot,'toolboxmatlabm_map',...           %这里不需加分号“;”
& t+ H1 u  c  C  Q  _%%% END ENTRIES %%%
+ F3 N% _3 C& A7 n. b
, {1 X' N, D3 ]( L0 N$ g: i4 z3、运行 rehash toolboxcache 命令,完成工具箱加载& g% b- s$ R, s+ J  K; c0 g
+ h4 ]6 l1 m2 D- C
>>rehash toolboxcache
+ o) j" U7 d5 x) v8 y, p2 C- _& c( Q0 N) q! _6 K! z
========以上,完成加载==============================' G0 h5 L7 O. e" L( f4 b
) b4 I: E9 g7 u; J6 u- Y* l% U
========以下,测试是否成功===========================
; ]2 a# {6 ^2 ?; p9 S' D1 y  j& p0 a8 P; i% |
test1:运行6 a* _- }5 d9 K4 J) [' L: H. j+ Q
6 f2 a) i7 z# _+ P* W
>>what m_map% q5 a1 g3 g! D4 F

! o1 M. e9 H' c/ T3 \: y8 P得到的结果类似dos中的dir命令,即可。! L9 j  U+ f% N

4 n, W, S; c/ V6 BM-files in directory C:Program FilesMATLABR2009atoolboxmatlabm_map' L9 a& w4 h, d' ]% Z; r7 \7 ~
- V% M  r. u% }2 W6 J
Contents        m_grid          m_ll2xy         m_scale        + O- ~3 @7 Y- H
m_coast         m_gshhs         m_lldist        m_tba2b        
, ~0 B- h/ B7 [2 s% ~) h4 Xm_contour       m_gshhs_c       m_mag2geo       m_tbase        & I' Z" h+ E# k: A
m_contouRF      m_gshhs_f       m_patch         m_text         
/ Y" V. h: w3 U8 E# ]9 n$ G" Cm_coord         m_gshhs_h       m_pcolor        m_track        
" ^8 b7 C: y: [  a; lm_demo          m_gshhs_i       m_plot          m_ungrid      
, I3 J1 P- r$ }, H" Nm_elev          m_gshhs_l       m_plotbndry     m_usercoast    % G- Y( j, E. _
m_etopo2        m_hatch         m_proj          m_vec          " p1 Q# o" S, G% k# \) o
m_fdist         m_idist         m_quiver        m_xy2ll        
2 E+ e* A$ H; ?( Z; E! O3 i' q4 q) Vm_geo2mag       m_legend        m_range_ring    m_xydist       ( E3 V9 I7 G/ N1 D; Q( q
m_geodesic      m_line          m_ruler        
% W5 i+ _2 S( k/ M
" r- ]. ^$ i6 O' G" L- z' vtest2:测试demo' A6 N. t+ ]: W( \* e

5 K' A$ f. y* b$ |>>m_proj('oblique mercator');
/ H* A+ {, F; k* r  gm_coast;
, k8 d2 X5 |. y4 S8 X- B, B5 v. pm_grid;
) j' n) U' v: D' X: \# [! ?$ B: a7 \" Q# Y+ j

8 M2 H2 n  ~( z
: Y. N8 b$ d$ m------------------------------  T6 h  v) \2 I3 h( [2 a

; t" d* H$ Z; }4 t) Hm_map工具箱画出的图(edit at 23:00 2011-04-28)' p! i9 a% c8 L/ n9 D5 ?0 `
5 ?4 S* l  D' o
) m9 f' _' u; ~& E! D0 m2 l4 d: p

  s. \; a( s& X7 ?" `( i %--------------------------------------------------------------------
/ U4 m& n  h6 h1 X7 H# Y" Q# D3 S9 h+ a  }: l
figure* `2 s" m% q. K4 m
P=A11;%%%%%%%%%%%%%%%这个就是你取出来的GRACE数据 如a(:,: )=grace(i,:,: );
7 o/ m5 B& C0 V6 f& {: w$ J# @lo=0.5:359.5;
0 z5 V0 R! ]) O$ E9 @2 Y1 ela=-89.5:89.5;
! z7 K: R5 n( J- m. G[lo,la]=meshgrid(lo,la);4 Z! t" k  E! t- s6 \1 F
m_proj('Equidistant Cylindrical','lon',[0.5,359.5],'lat',[-89.5,89.5]);
2 P) f, }& H% X: O. Z+ Om_pcolor(lo,la,P);hold on;( \/ S4 I! T% A3 v7 s- d& p  c* K( ]
shading flat;, T8 y8 E  a$ `/ q5 ^' C/ I5 `
m_grid('box','fancy');, j1 {- R# R& d9 I+ [0 g, C7 o+ ^
hold on;
5 ~: u8 p8 d) S# o7 ]8 |5 t* T7 n/ Y- ^- D7 ^( e. F: H
-----------------------画出的图示-----------------------
* n$ U' {" t) R. @  k% G
, G4 K. I" n9 B8 x5 w% V
: \2 R! _$ h( ^/ H+ C1 p( P, A" w" z% ]3 `, n6 v) T$ d7 _7 k
====================================
+ n& B  Y- A- Q& x9 @$ Z7 {' _3 \8 E! |' r6 ~, I' X
matlab的m_map工具箱及添加行政边界底图& P6 |. _7 J, ?# K" S0 |0 D4 q6 \

% t& ]3 n- M, J. t$ J* c" h' g) Q; I转自:http://hi.baidu.com/blucas/blog/ ... 417087b901a014.html# y" Y6 j( Z# n% [
对习惯使用matlab的人来说,m_map是一个很好的绘制地图的免费工具箱。可以选择的投影种类近20种,包括常用的Lambert、 Mercator、UTM等。可以测量距离( m_lldist, m_xydist ),绘制等值线(m_contour),等值线填充图(m_contourf),矢量图(m_quiver),栅格图(m_pcolor)等,并与相应的 matlab函数语法类似,很容易使用。9 }; V* ?2 w) K( F
m_map通过m_coast提供1/4 degree分辨率的全球海岸线,通过下载GSHHS可以得到更高分辨率的海岸线数据。1 S& y) Q! g& u, n- B
除海岸线外,还可以利用已有的GIS行政边界资料,在地图上添加行政边界底图。具体作法为:下载.shp格式的行政边界文件( 国家基础地理信息系统的下载服务),将下 载的.shp文件通过mapinfo转换成.dxf文件,利用已编译好的fortran程序,读取经纬度信息,输出.dat文件。导入matlab空间, 可以直接m_plot,也可以调用m_plotbndry()。
$ e# s" Y) ^) L; \) [, s8 Z, H通过以上方法可以实现.shp在matlab绘图中的应用。

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-8-12 15:27 , Processed in 0.140625 second(s), 26 queries , Gzip On.

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

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

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