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

怎样给matlab添加M_map工具箱

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
本帖最后由 mytomorrow 于 2020-4-21 10:50 编辑
9 @+ b% k$ w# L8 O/ g' Q3 F6 V/ e% D

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

8 J8 Y# [' L+ Q, T) P1 d0 o  P+ T# e

/ }+ {8 Q  Q# b5 v8 K9 x& h5 ^查阅了些资料,请教了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;', .../ u1 v+ X. O* O/ O) F) t. O' g. \
matlabroot,'toolboxlocal;', ...
; O$ [2 i2 ~, F8 _matlabroot,'toolboxsharedcontrollib;', .... }1 z1 B0 E: U  x, m! Y5 i$ B
matlabroot,'toolboxshareddastudio;', ...' A4 x7 Z6 @6 M- H
matlabroot,'toolboxmatlabdatamanager;', ...
% V7 F; y) Z+ V/ ]matlabroot,'toolboxmatlabm_map',...           %这里不需加分号“;”
4 y( {3 ]! y2 N0 h. Z4 `%%% 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        
1 B% q( I8 I1 \7 @& z' t8 i/ Em_coast         m_gshhs         m_lldist        m_tba2b        
0 t' l( d0 U, U5 ~+ }- q. X, q: xm_contour       m_gshhs_c       m_mag2geo       m_tbase        , J* r! }' K2 d/ K" l; {
m_contouRF      m_gshhs_f       m_patch         m_text         
& E# Y+ b8 V" o: F; ?m_coord         m_gshhs_h       m_pcolor        m_track        8 c" |% r9 h$ F& e( f, K* v+ z9 d
m_demo          m_gshhs_i       m_plot          m_ungrid      
' S$ W  p) q, x  D" j7 ^m_elev          m_gshhs_l       m_plotbndry     m_usercoast   
9 h$ A2 B) X; @6 p9 x% A' l) V( }) gm_etopo2        m_hatch         m_proj          m_vec          0 W* q7 M: `2 e
m_fdist         m_idist         m_quiver        m_xy2ll        
. W) Z# u+ ~3 V( M6 ^: n" a0 Vm_geo2mag       m_legend        m_range_ring    m_xydist      
: L/ Q2 D( x* f7 om_geodesic      m_line          m_ruler        

test2:测试demo

>>m_proj('oblique mercator');
2 W& ]% \* u' W: cm_coast;( A2 j1 q# c4 Q+ {7 L6 p0 V
m_grid;

% o) }3 L1 s- E* N( x

6 l$ K: u! i3 T* N6 S

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

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


& R6 R3 a: i/ y5 e+ i0 X
9 _0 U; W! Y2 {" i

: E% T  K2 ]) ^, T
%--------------------------------------------------------------------

figure
  V9 n' q( [, X' cP=A11;%%%%%%%%%%%%%%%这个就是你取出来的GRACE数据 如a(:,: )=grace(i,:,: );! y+ u1 V. N( P9 J5 ?
lo=0.5:359.5;" ?0 X% Z2 @7 f/ K( g$ G, l5 I+ q" K. {
la=-89.5:89.5;" t5 }+ m' _$ I
[lo,la]=meshgrid(lo,la);6 v; F$ c7 }$ R9 T8 A4 D
m_proj('Equidistant Cylindrical','lon',[0.5,359.5],'lat',[-89.5,89.5]);
$ I3 _/ w" N0 m' K" Jm_pcolor(lo,la,P);hold on;
9 M/ h/ W% K' K- Z' S* T% wshading flat;8 ?& f/ o$ ^  m" U1 ]; j1 X
m_grid('box','fancy');7 x( v7 @9 a& E$ Y: q, R
hold on;

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

& e1 q$ U5 t( i) K# x
6 A9 R. F* Y2 Z$ i  i5 Q6 j& D& z

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

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

  b* M. W( w" g8 R8 A) f

对习惯使用matlab的人来说,m_map是一个很好的绘制地图的免费工具箱。可以选择的投影种类近20种,包括常用的Lambert、 Mercator、UTM等。可以测量距离( m_lldist, m_xydist ),绘制等值线(m_contour),等值线填充图(m_contourf),矢量图(m_quiver),栅格图(m_pcolor)等,并与相应的 matlab函数语法类似,很容易使用。) V# O, k' q/ s
m_map通过m_coast提供1/4 degree分辨率的全球海岸线,通过下载GSHHS可以得到更高分辨率的海岸线数据。
3 d8 b  z8 k3 k8 A除海岸线外,还可以利用已有的GIS行政边界资料,在地图上添加行政边界底图。具体作法为:下载.shp格式的行政边界文件( 国家基础地理信息系统的下载服务),将下 载的.shp文件通过mapinfo转换成.dxf文件,利用已编译好的fortran程序,读取经纬度信息,输出.dat文件。导入matlab空间, 可以直接m_plot,也可以调用m_plotbndry()。! ]7 r% v  x6 Y2 J' _2 s7 e  }0 ^/ t# S
通过以上方法可以实现.shp在matlab绘图中的应用。$ z+ i/ U; x' s6 H5 v! @
4 `6 s" O; D6 w4 V8 ?1 G0 l
" W) Q# d; Q$ \% v

) ~! v, v; |' b$ k6 K( D! C* ~; p

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-24 02:00 , Processed in 0.140625 second(s), 26 queries , Gzip On.

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

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

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