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

matlab如何添加M_map工具箱

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
本帖最后由 pulbieup 于 2020-3-16 10:29 编辑
; f1 G6 f( {+ R
: _& x# |! m% `2 L# E! ?, N) Q' R之前转载过matlab画世界地图的文章。最近正好用到。首先试了matlab自带的worldmap,感觉画出来的图形不尽如人意,比较杂乱。如下图。1 s. m, e; b, }* F, ?* ?- @& s+ [, _! D
9 G& u2 }/ ^( ~, a4 r3 c

0 u% X8 K. I( \, s  y查阅了些资料,请教了Liangjing,一致推荐m_map。为了达到想要的效果,这次只要不再偷懒,下载M-Map工具箱(http://www.eos.ubc.ca/~rich/map.html)并进行安装。所幸过程比较顺利,现记录如下,回头把画出的效果图再添上。其他matlab的toolbox安装,也可参考进行。
/ @4 x0 U2 |4 a5 S7 Y( H9 c
% D* d: G; V& q, h----------------------------------------
5 V* M: B6 ^/ R) |1 V" `. d- Q4 P  ]) B% r+ e+ H
M_map的User Guide教的,matlab安装目录请自行参考自己的电脑。4 C% n; A: w$ u6 x! }

% w, ]) s" v1 g1 C- Q1、将M_map.zip工具箱内容解压缩,至'C:Program FilesMATLABR2009atoolboxmatlabm_map'+ [3 ?* G: M5 @$ G9 {7 h
' J2 ?5 M' |4 W9 K+ X. o  V
2、找到'C:Program FilesMATLABR2009atoolboxlocalpathdef.m'文件,打开,并把1中的路径添加到该文件中,保存。: k( ^( M6 f& E" a7 Q9 m' B

8 M, @( y# \+ X/ smatlabroot,'toolboxmatlabplottools;', ...
7 r0 G/ d  n3 |8 ~+ y( A% jmatlabroot,'toolboxlocal;', ...
* C: `( ~& J! j6 I# p5 z* Rmatlabroot,'toolboxsharedcontrollib;', ...8 E, k, A, B" q! o9 L
matlabroot,'toolboxshareddastudio;', ...+ }( ]$ U* B! c
matlabroot,'toolboxmatlabdatamanager;', ...
* U: b/ g. ]  c$ y6 ^: q1 Xmatlabroot,'toolboxmatlabm_map',...           %这里不需加分号“;”
' O! ~! Y% _9 Z5 A4 f/ E& a. i5 i8 U%%% END ENTRIES %%%/ e# Z: F. N3 L! |" R' H0 W, ]& q7 A
$ n0 o! C' H# A5 c
3、运行 rehash toolboxcache 命令,完成工具箱加载( M6 F9 s$ q. Y4 e) i1 \

/ A5 y5 p! z8 A% K7 X* L- w>>rehash toolboxcache
, w, u( A9 ^3 M) b1 g8 [
9 [) D5 f* v9 y, h/ e: H========以上,完成加载==============================8 l) S5 h- Q, R/ W
0 q$ G2 u; _* \
========以下,测试是否成功===========================
: \1 |& I7 V3 Q2 s" U  Z# s$ u  d" \6 F6 }* s) m/ z
test1:运行
. U+ K6 t# o- Y- Z) }: X  q/ x& \1 o) s9 Z& O; A5 I
>>what m_map( J7 e* c  j2 M: B4 V' @

5 u2 ^% H! d0 F9 _' ~2 T得到的结果类似dos中的dir命令,即可。( R  R9 h8 \0 v4 p( G. B' a  e2 r
+ h# O6 G4 \) I
M-files in directory C:Program FilesMATLABR2009atoolboxmatlabm_map
( E, f) d: T/ y  w' M  r3 w/ ]2 l+ S8 C" H+ P
Contents        m_grid          m_ll2xy         m_scale        ; ]/ a" g/ ~* O" C& K% C
m_coast         m_gshhs         m_lldist        m_tba2b        
( @9 F( x/ k) Z, |) H$ Z. Nm_contour       m_gshhs_c       m_mag2geo       m_tbase        ) k  M' x8 n: a0 `; H4 \
m_contouRF      m_gshhs_f       m_patch         m_text         
. N) r+ U9 {. e2 vm_coord         m_gshhs_h       m_pcolor        m_track        * I# r2 [6 M# c* j; l' [
m_demo          m_gshhs_i       m_plot          m_ungrid       + X" U1 I/ d. Y
m_elev          m_gshhs_l       m_plotbndry     m_usercoast   
' }. M$ Y  ]5 ]0 j, l' F/ x/ S( um_etopo2        m_hatch         m_proj          m_vec          9 z8 A& T  o( V7 F: E: i
m_fdist         m_idist         m_quiver        m_xy2ll        - F+ p$ ~6 G# T5 ^' R3 v. T6 I. t
m_geo2mag       m_legend        m_range_ring    m_xydist      
: e* q  ?7 T# s6 Gm_geodesic      m_line          m_ruler        
& S; p; ^6 I% V( s  U- I
( }& F" n  C2 }, P, n1 ~" J" x1 ^test2:测试demo
# p' P0 a1 _% J8 O* L# ?& U6 P. n9 o2 D  o" a  M% b% \7 Y8 v
>>m_proj('oblique mercator');( D  Y. s3 g. S" t
m_coast;
' A1 ^) j. w" e) j$ [, vm_grid;
( ]. V4 G6 j8 y0 I( K) W0 E+ M6 N: y1 K! a+ L& ~) C) h! L2 O
0 Y8 U5 c, h! t7 [5 _
! v' u- }; _! i1 }2 E
------------------------------0 ?& ]- s% d+ C3 w9 X% v8 B
% n/ |9 K, q* i4 l9 D. z
m_map工具箱画出的图(edit at 23:00 2011-04-28)
! b, _" r' v! t) V7 f+ i& B
1 ?" n- T) d, t( c% C: m" w
/ ~& i8 m8 i$ c1 `
' C) x, o) n$ p) g4 R0 d %--------------------------------------------------------------------2 l9 x1 Y( A4 M
0 N6 H! s7 f) {; s# v  b: Y: X
figure
9 O( B2 N& s" j/ m  I2 VP=A11;%%%%%%%%%%%%%%%这个就是你取出来的GRACE数据 如a(:,: )=grace(i,:,: );* |  v' k1 H- s9 d- c
lo=0.5:359.5;4 P, y0 ?7 E& ^
la=-89.5:89.5;- D# ~& ^# l% O: R
[lo,la]=meshgrid(lo,la);
+ R1 _/ z. q7 Am_proj('Equidistant Cylindrical','lon',[0.5,359.5],'lat',[-89.5,89.5]);
  Z0 A* Q4 `9 N; Nm_pcolor(lo,la,P);hold on;4 S" ?: r1 {2 Q% H6 A, N- Y3 c
shading flat;% g6 [3 G0 N/ k
m_grid('box','fancy');
. p' U7 u5 K4 i8 Ahold on;0 h% X8 P2 g" R' M

! l- F/ [+ q% I4 k- y-----------------------画出的图示-----------------------
* N3 n* W) }& D. F- v
) K  h3 U" q8 y6 o7 r& d9 f5 I/ e' J - F+ M) O, T1 i0 e
' W5 O; E: L/ f* c( S2 T% O
====================================
& h& J" ]& x& z: L: m4 F
9 |+ C* X, I% I( Vmatlab的m_map工具箱及添加行政边界底图
. S8 o- Y" Q! A) v9 g. k. N4 w& O: M% ]- o( M- M
转自:http://hi.baidu.com/blucas/blog/ ... 417087b901a014.html, @9 l+ Y: Z# t9 H
对习惯使用matlab的人来说,m_map是一个很好的绘制地图的免费工具箱。可以选择的投影种类近20种,包括常用的Lambert、 Mercator、UTM等。可以测量距离( m_lldist, m_xydist ),绘制等值线(m_contour),等值线填充图(m_contourf),矢量图(m_quiver),栅格图(m_pcolor)等,并与相应的 matlab函数语法类似,很容易使用。
, Q) v+ J! M5 r4 Z: km_map通过m_coast提供1/4 degree分辨率的全球海岸线,通过下载GSHHS可以得到更高分辨率的海岸线数据。- A$ {" t5 S+ a% b1 }( p
除海岸线外,还可以利用已有的GIS行政边界资料,在地图上添加行政边界底图。具体作法为:下载.shp格式的行政边界文件( 国家基础地理信息系统的下载服务),将下 载的.shp文件通过mapinfo转换成.dxf文件,利用已编译好的fortran程序,读取经纬度信息,输出.dat文件。导入matlab空间, 可以直接m_plot,也可以调用m_plotbndry()。
3 R8 H, V/ @8 d5 o, o! ~8 h! o. e  O通过以上方法可以实现.shp在matlab绘图中的应用。

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-8-23 15:07 , Processed in 0.125000 second(s), 26 queries , Gzip On.

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

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

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