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

怎样给matlab添加M_map工具箱

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
本帖最后由 mytomorrow 于 2020-4-21 10:50 编辑 1 t8 h$ r" ~! G, J) [
; r7 j5 I/ W$ {" h# a% B

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


' c% y6 B4 H0 T3 b" x7 t4 [
- z/ K# |( f$ H2 r5 r% O: f查阅了些资料,请教了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;', ...
( ~6 o! l4 V/ N$ r* [matlabroot,'toolboxlocal;', ...  D( O& o/ d- ~& p, v4 o+ ]2 ~3 Z
matlabroot,'toolboxsharedcontrollib;', ...: V3 @/ }# C, x2 ~' p
matlabroot,'toolboxshareddastudio;', .../ K. T& e0 `  U5 `0 c: |, H% _
matlabroot,'toolboxmatlabdatamanager;', ...
' |$ P3 Z7 D9 p1 V6 Fmatlabroot,'toolboxmatlabm_map',...           %这里不需加分号“;”$ i# ]0 G% L; W' A6 c4 E# b
%%% 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        
: J+ {8 s2 o; _. k4 o# Zm_coast         m_gshhs         m_lldist        m_tba2b        
5 `* ^8 C; K  C6 km_contour       m_gshhs_c       m_mag2geo       m_tbase        3 `" H* p  D; ~% I, e6 ^% P! ]. Y0 ?6 m
m_contouRF      m_gshhs_f       m_patch         m_text         
! j" r3 j0 D9 h) ~& @m_coord         m_gshhs_h       m_pcolor        m_track        2 f; y. M3 P/ H3 m3 v8 d8 h
m_demo          m_gshhs_i       m_plot          m_ungrid      
2 `% i( C" ~1 J( S' g/ O. I0 am_elev          m_gshhs_l       m_plotbndry     m_usercoast    ) e6 x1 y) `' l
m_etopo2        m_hatch         m_proj          m_vec         
6 x# V  M5 S4 f! ~# Om_fdist         m_idist         m_quiver        m_xy2ll        
9 J$ Y5 L1 S$ k6 J& d% `m_geo2mag       m_legend        m_range_ring    m_xydist       - a3 W: ^8 o  i  o
m_geodesic      m_line          m_ruler        

test2:测试demo

>>m_proj('oblique mercator');
6 g# C1 D6 ]- p8 ym_coast;
9 v) W5 x1 V+ c/ E7 hm_grid;

( R$ O; ^5 A- }0 c# v
( _- o$ O) ?/ R6 s

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

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


9 Q( p  u3 b7 x
, H5 a1 z" U; ?! }. r# K* z

0 c6 e0 {) z& w0 `8 t$ [
%--------------------------------------------------------------------

figure3 F* K. I4 \6 b' z& n$ Y7 [  B$ p
P=A11;%%%%%%%%%%%%%%%这个就是你取出来的GRACE数据 如a(:,: )=grace(i,:,: );1 }5 X% L) l. I% N, a  @/ H% ]2 O
lo=0.5:359.5;
8 j( m, r9 v$ Zla=-89.5:89.5;4 ^) W2 R) Z* n- q
[lo,la]=meshgrid(lo,la);
3 d* l# C  K) d7 J8 ], ~9 pm_proj('Equidistant Cylindrical','lon',[0.5,359.5],'lat',[-89.5,89.5]);, I2 a4 s  j8 y; X
m_pcolor(lo,la,P);hold on;
: T. S0 h# Y3 f5 \shading flat;: G/ z' Z& e$ z7 m& T# F+ }* X. G
m_grid('box','fancy');
: ]+ J2 B, _% y9 l' ^! Y+ |! Ahold on;

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


: x5 A; z$ ?( O; N" r+ z! }+ x+ M8 F+ e

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

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

( L; Y( w4 j( I6 f% z4 ~+ S9 C

对习惯使用matlab的人来说,m_map是一个很好的绘制地图的免费工具箱。可以选择的投影种类近20种,包括常用的Lambert、 Mercator、UTM等。可以测量距离( m_lldist, m_xydist ),绘制等值线(m_contour),等值线填充图(m_contourf),矢量图(m_quiver),栅格图(m_pcolor)等,并与相应的 matlab函数语法类似,很容易使用。1 D! o. g6 G. N9 J% u, a5 Q
m_map通过m_coast提供1/4 degree分辨率的全球海岸线,通过下载GSHHS可以得到更高分辨率的海岸线数据。
' B, A: a/ T3 R5 p除海岸线外,还可以利用已有的GIS行政边界资料,在地图上添加行政边界底图。具体作法为:下载.shp格式的行政边界文件( 国家基础地理信息系统的下载服务),将下 载的.shp文件通过mapinfo转换成.dxf文件,利用已编译好的fortran程序,读取经纬度信息,输出.dat文件。导入matlab空间, 可以直接m_plot,也可以调用m_plotbndry()。- R5 Z8 d8 \( M2 L" E0 O+ r4 W
通过以上方法可以实现.shp在matlab绘图中的应用。
; f$ `6 W" j6 r$ I
7 A* r* k/ F: l
8 t3 s  a; A, X1 ?! o

; v0 M! R& B7 j, P

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-4 06:13 , Processed in 0.140625 second(s), 26 queries , Gzip On.

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

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

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