matlab中ped工具箱,科学网—MATLAB 地图工具箱 m_map 的安装和入门技巧 - 杨峰峰的博文...

需要用一些地图工具,arcgis懒得装了,GMT(generic mapping tools)太复杂,因此搜到了m_map, 正好是MATLAB的工具箱。于是研究了一晚上。

一、m_map 工具箱的安装

http://www.eos.ubc.ca/~rich/map.html

以上网址是m_map工具箱的网站,找到m_map工具箱文件下下来,一共不到700k。名字叫 gzipped tar-file , or zip archive 下其中一个即可。

方法1.

解压,得到 m_map文件夹,把他放到你的MATLAB安装目录下, 即放在(MATLAB装在其他盘的请将C改为其他盘符): C:Program FilesMATLABR2012btoolboxm_map

然后打开 C:Program FilesMATLABR2012btoolboxlocalpathdef.m   (如果有权限问题,一般是win7且MATLAB装在C盘会出现权限问题,那就在开始菜单找到记事本,右键,管理员运行,然后打开pathdef.m 文件)

将下面一句话加到 %%% BEGIN ENTRIES %%% 下面

matlabroot,'toolboxm_map', ...

最后,打开MATLAB,输入 rehash toolboxcache,到此就安装好了m_map.

但是我测试了一下,把MATLAB关了重开,由于C盘有权限,MATLAB访问toolbox文件夹有限,于是安装不成功,但是如果你的MATLAB是在D盘,就没事。

方法2

目前一定能成功。后来我就自己开发了一个方法,无论你的MATLAB安装在哪个盘,将m_map 复制到除了C盘以外的任意一个盘,比如 D:mymatlabfilesm_map,  然后用记事本打开那个 pathdef.m, 然后在

%%% BEGIN ENTRIES %%% 下面加入下面的话:

'D:mymatlabfilesm_map;', ...

这样就不用每次打开MATLAB添加path了。

测试安装好与否的方法是 输入 what m_map, 如果显示了一堆m文件名字,即装好了,如果显示 not found,则没装好,这时候在MATLAB界面上找到 set path,我的是2012b,直接在上面就有,在preference的下面,然后add folder, 浏览到C:Program FilesMATLABR2012btoolboxm_map,然后save即可。

二、m_map 如何入门

首先运行了一个例子,语句是

m_proj('oblique mercator');

m_coast;

m_grid;

意思是定义一个投影系统,名叫oblique mercator,注意,定义这个投影系统的时候他已经默默的将地球上的范围给定义了,这个例子是哥伦比亚的一个海岸,然后 第二句和第三句就是画图用的,画出海岸线和网格,第一句是不画图的。那么如何定义地球上的范围呢,往下看。

m_map 里面嵌有19个投影系统,名字如下所示,你首先要明白这19个系统长什么样。

proj{1}='Stereographic';proj{2}='Orthographic';proj{3}='Azimuthal Equal-area';

proj{4}='Azimuthal Equidistant';proj{5}='Gnomonic';proj{6}='Satellite';

proj{7}='Albers Equal-Area Conic';proj{8}='Lambert Conformal Conic';proj{9}='Mercator';

proj{10}='Miller Cylindrical';proj{11}='Equidistant Cylindrical';proj{12}='Oblique Mercator';

proj{13}='Transverse Mercator';proj{14}='Sinusoidal';proj{15}='Gall-Peters';

proj{16}='Hammer-Aitoff';proj{17}='Mollweide';proj{18}='Robinson';

proj{19}='UTM';

这是我在MATLAB里把这19个名字弄到一个cell中了。然后我用了下列语句

1       j=1;

2      m_proj(proj{j});

3      m_coast;

4      m_grid;

5m_proj get

6      m_proj('set',proj{j});

7      m_proj(proj{j},'longitudes',100, 'latitudes',0,'rad',90,'rec','circle','rot',0);

8      m_coast('patch',[.7 .6 .8],'edgecolor','r');

9      m_grid('xlabeldir','end','fontsize',10);

重点就在这里,我以第一个投影系为例,j=1嘛,前4行是把这个投影系画出来看看是什么样,然后

m_proj get 是获取这个投影系的默认地理范围,可以看出是

center longitude: 0

center latitude: 60

radius/altitude : 90

Rectangular border: circle

Rotation angle: 0

然后我再用m_proj('set',proj{j}); 命令,得到

'Stereographic'

意思就是,如果你要是用'stereographic' 投影系的话,你可以定义'longitude', 'latitude', 'radius',

'rectbox' and 'rotangle'. 当然,如上面我写的第7行那个,可以用 'lon'代替'longitude'。

然后我就再第7行把lon设置为100,这时候就可以让伟大的中国在中间了。就是这样一个一个系统的去看,每个投影系定义的方式都不一样,其中有些是重复的,但是意义不同。同理,m_coast 和 m_grid 也是这样学习,然后在继续看m_map 网站的用户说明即可,网址是:

http://www.eos.ubc.ca/~rich/private/mapug.html#p1

希望对你们有帮助,网上一些其他的教程太不负责任,只是将 User's guide 翻译了一下,翻译的还不怎么样。

MATLAB m_map toolbox

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值