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

怎样给matlab添加M_map工具箱

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
本帖最后由 mytomorrow 于 2020-4-21 10:50 编辑 8 ~9 E: m& ?$ B9 E9 C2 W% Z

. Z' C* a8 q- S4 ]- c4 ?0 u% B

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

; V- M- i3 L- a$ k6 L" r- A. m

9 F. @2 @& s" n+ x% E8 F; X查阅了些资料,请教了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;', ...: W. A" Z- ^1 S1 I) ?
matlabroot,'toolboxlocal;', ...
' Y( i8 G! B/ O  x5 _5 G: k# g# pmatlabroot,'toolboxsharedcontrollib;', ...
3 W; p. B8 q: |' Y" l2 smatlabroot,'toolboxshareddastudio;', ...# e! U( W& z1 K/ P4 ^# C
matlabroot,'toolboxmatlabdatamanager;', ...: b) O1 k6 s$ V; D2 R1 H* Z
matlabroot,'toolboxmatlabm_map',...           %这里不需加分号“;”
0 J" B3 S% n% Y: n. w: V. |%%% 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        
+ e) m: f7 F$ R& Z7 um_coast         m_gshhs         m_lldist        m_tba2b        1 n: z* N$ N, T: \- T- J/ c" F- P
m_contour       m_gshhs_c       m_mag2geo       m_tbase        
2 N* F- F$ M, D% C" Qm_contouRF      m_gshhs_f       m_patch         m_text         
: {0 Y1 l  ]; h  a9 ~% Rm_coord         m_gshhs_h       m_pcolor        m_track        
4 ^4 d) o7 ]5 g  _, x4 ]m_demo          m_gshhs_i       m_plot          m_ungrid      
' a7 S2 d$ d1 D' g1 O  R# ^/ @m_elev          m_gshhs_l       m_plotbndry     m_usercoast   
0 K: C: k* n1 D& v/ m: p6 Dm_etopo2        m_hatch         m_proj          m_vec          4 d9 {8 I5 b5 \8 N, x
m_fdist         m_idist         m_quiver        m_xy2ll        & {) [* x0 z5 f) E8 _) `) ], c7 u$ l
m_geo2mag       m_legend        m_range_ring    m_xydist      
. p8 b3 c0 r& w# M# M+ w$ K$ ~m_geodesic      m_line          m_ruler        

test2:测试demo

>>m_proj('oblique mercator');: Q. `! }7 K4 a8 c
m_coast;' `# h5 i" \' r; G) I
m_grid;


  w" t" x3 |' R6 S4 [2 s: O
! c- x5 w4 w2 o( J; A

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

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


- ^, v$ e: [# H5 l9 m/ ^' J' k+ d/ z

6 {/ B0 Z/ H3 `0 ]6 k: u
%--------------------------------------------------------------------

figure" \& p" v5 k( s' e
P=A11;%%%%%%%%%%%%%%%这个就是你取出来的GRACE数据 如a(:,: )=grace(i,:,: );  T: y- {: J0 i4 y0 D1 u
lo=0.5:359.5;
* O" @9 I# d* zla=-89.5:89.5;
* c/ k5 v7 \! ^* S- k[lo,la]=meshgrid(lo,la);
+ y" H  f! ~% G5 ?# K) vm_proj('Equidistant Cylindrical','lon',[0.5,359.5],'lat',[-89.5,89.5]);
+ N  g2 n5 ~, k! e# h# ]m_pcolor(lo,la,P);hold on;
0 [; x" F0 K3 N2 Nshading flat;) a0 G8 X* V2 Z, V# Q% G
m_grid('box','fancy');
6 `, `/ _& l2 s) i; b6 \hold on;

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


, c4 y, m9 Y6 Y0 S: i& O* S0 G. }( c8 {$ e- h& @( ^- L

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

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

% J( L' @- u1 k+ k% d/ o( }6 k

对习惯使用matlab的人来说,m_map是一个很好的绘制地图的免费工具箱。可以选择的投影种类近20种,包括常用的Lambert、 Mercator、UTM等。可以测量距离( m_lldist, m_xydist ),绘制等值线(m_contour),等值线填充图(m_contourf),矢量图(m_quiver),栅格图(m_pcolor)等,并与相应的 matlab函数语法类似,很容易使用。# r: \3 ^8 H* l% P
m_map通过m_coast提供1/4 degree分辨率的全球海岸线,通过下载GSHHS可以得到更高分辨率的海岸线数据。4 W' l. j$ B3 ?
除海岸线外,还可以利用已有的GIS行政边界资料,在地图上添加行政边界底图。具体作法为:下载.shp格式的行政边界文件( 国家基础地理信息系统的下载服务),将下 载的.shp文件通过mapinfo转换成.dxf文件,利用已编译好的fortran程序,读取经纬度信息,输出.dat文件。导入matlab空间, 可以直接m_plot,也可以调用m_plotbndry()。% Y) [1 O& u7 Y% Q
通过以上方法可以实现.shp在matlab绘图中的应用。
: T8 F  \/ K; B3 D# K; n- }, ?
$ E4 v: K9 L8 o7 y+ f1 X8 [/ e5 P% }* M4 H: b9 s


5 e: A3 o6 @' Z+ A6 F2 [

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-7-22 23:04 , Processed in 0.125000 second(s), 27 queries , Gzip On.

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

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

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