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

怎样给matlab添加M_map工具箱

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
本帖最后由 mytomorrow 于 2020-4-21 10:50 编辑 8 P; ]0 m- `4 Y2 \! A

6 W4 D& \% ^- k9 W+ W: ~

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

5 U/ a5 a$ _, G- ^3 a' q

7 m3 a1 P1 T1 O* B2 p1 L' J查阅了些资料,请教了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;', ...
4 V$ j$ C% {, k# _0 J( x/ X, Fmatlabroot,'toolboxlocal;', ...
7 Z. P$ U& g2 v8 Q( v. @, M0 lmatlabroot,'toolboxsharedcontrollib;', ..." z: V% V4 w) o7 `
matlabroot,'toolboxshareddastudio;', ...1 S) ]( l& _8 I% r/ ~, x* U% V
matlabroot,'toolboxmatlabdatamanager;', ...
% n+ ~3 H! Z3 u9 Rmatlabroot,'toolboxmatlabm_map',...           %这里不需加分号“;”2 O0 [( w. N  b, C- P  U
%%% 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        - S' l, u) \6 l" A( s
m_coast         m_gshhs         m_lldist        m_tba2b        
% a8 h# e: E$ z, a  ~) L5 R; N- xm_contour       m_gshhs_c       m_mag2geo       m_tbase        ( P" b: Z% L+ Y" n3 g
m_contouRF      m_gshhs_f       m_patch         m_text         
1 y9 R8 I) G! l$ r+ Q  C% pm_coord         m_gshhs_h       m_pcolor        m_track        
. t# ~) C0 n3 s% ]m_demo          m_gshhs_i       m_plot          m_ungrid      
7 N4 ^2 c! J2 S* U; d! c4 k2 lm_elev          m_gshhs_l       m_plotbndry     m_usercoast   
7 p; H% r0 f; h& Q5 p) m; E: om_etopo2        m_hatch         m_proj          m_vec          2 G) Z$ y3 w0 C: |% i* m+ U# B
m_fdist         m_idist         m_quiver        m_xy2ll        
* {+ _$ v5 i2 A# Q% p' i) xm_geo2mag       m_legend        m_range_ring    m_xydist       . S- f) ^4 y3 P; x( a
m_geodesic      m_line          m_ruler        

test2:测试demo

>>m_proj('oblique mercator');( [3 l4 f, ?% ]. E
m_coast;
; D0 E7 D: H3 X4 m0 V5 L  ~m_grid;

8 v3 n! J! _  D/ v

5 ?* W6 ~7 Y1 @

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

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

* _0 I7 Q) Q( V1 r+ e
8 h+ n) O# t% M# X6 p. R6 M% G# _

/ s. r  O) Z; C: i% `
%--------------------------------------------------------------------

figure
  Z$ w  p! Y5 Z( Y% EP=A11;%%%%%%%%%%%%%%%这个就是你取出来的GRACE数据 如a(:,: )=grace(i,:,: );1 S- S9 I7 `' V/ i: y
lo=0.5:359.5;4 ?- W8 r4 F% p' D7 L1 S+ E9 R
la=-89.5:89.5;$ z2 N/ N: w. Y6 a. l
[lo,la]=meshgrid(lo,la);: D* B; V1 a- M+ E- m1 v
m_proj('Equidistant Cylindrical','lon',[0.5,359.5],'lat',[-89.5,89.5]);  q# B* }$ z, }, \
m_pcolor(lo,la,P);hold on;* b- P4 @! |6 n
shading flat;
4 u! b5 k  i; ?/ ]9 @m_grid('box','fancy');
9 N6 [. d5 C# {6 J5 m8 F7 nhold on;

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


: Z5 E. B" i( t: G9 X; k% n* H! l
. r& K" n: P. m, C* {; @

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

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


1 x6 m+ d: {3 A* b

对习惯使用matlab的人来说,m_map是一个很好的绘制地图的免费工具箱。可以选择的投影种类近20种,包括常用的Lambert、 Mercator、UTM等。可以测量距离( m_lldist, m_xydist ),绘制等值线(m_contour),等值线填充图(m_contourf),矢量图(m_quiver),栅格图(m_pcolor)等,并与相应的 matlab函数语法类似,很容易使用。- {" V0 f! P# L, [) u$ y/ u8 P
m_map通过m_coast提供1/4 degree分辨率的全球海岸线,通过下载GSHHS可以得到更高分辨率的海岸线数据。+ c( H$ T! o' H% x2 f4 D
除海岸线外,还可以利用已有的GIS行政边界资料,在地图上添加行政边界底图。具体作法为:下载.shp格式的行政边界文件( 国家基础地理信息系统的下载服务),将下 载的.shp文件通过mapinfo转换成.dxf文件,利用已编译好的fortran程序,读取经纬度信息,输出.dat文件。导入matlab空间, 可以直接m_plot,也可以调用m_plotbndry()。
- i6 T3 {& `( a, b3 r; |3 N通过以上方法可以实现.shp在matlab绘图中的应用。5 K3 q. r; Y7 Z' g3 x& _% r5 l7 I

- l9 D/ @" t6 b8 @* {! a3 d( h6 J% ], w

5 C$ R* N9 S" |. j

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-8-23 12:29 , Processed in 0.156250 second(s), 26 queries , Gzip On.

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

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

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