3、海岸线和深度测量

3.1.1 海岸线选项

m_coast('line', ...optional line arguments );
m_coast('line', ...optional line arguments );

 m_map 的海岸线数据可以使用m_coast 获得 ,此处的参数选项都是指定线的属性的一些标准选项例如线条样式,线宽,颜色等。

m_coast('patch', ...optional patch arguments );

此处的参数选项都是指定填充的属性的一些标准属性

m_coast('patch',[.7 .7 .7],'edgecolor','g');

绘制灰色填充,轮廓为绿色,当绘制了填充时,湖泊和内陆海洋给轴背景色。

m_coast('speckle', ....optional m_hatch arguments);

许多老的海洋地图使用斑点土地边界,这种黑白相间的地图看起来非常漂亮

3.1.2

clear all
m_proj('Stereographic');%确定投影方式和绘图界线
m_coast('linewidth',2,'color','r');;%画出海岸线
m_grid;%添加格网

clear all
m_proj('Stereographic');%确定投影方式和绘图界线
m_coast('patch',[1 1 0],'edgecolor','r');;;%画出海岸线
m_grid;%添加格网

3.2.1  地形水深选项

clear all
m_proj('Stereographic');%确定投影方式和绘图界线
m_coast('patch',[1 1 0],'edgecolor','r');;;%画出海岸线
m_elev;%添加地形水深数据
m_grid;%添加格网

3.2.2

clear all
m_proj('Stereographic');%确定投影方式和绘图界线
m_elev('contourf',15);%轮廓填充
m_coast;%画出海岸线
colorbar

3.2.3

clear all
m_proj('Stereographic');%确定投影方式和绘图界线
m_elev('contour',15,'edgecolor','b');%蓝色填充

3.2.3

clear all
m_proj('Stereographic');%确定投影方式和绘图界线
m_elev('contourf',15,'edgecolor','b');
colorbar
m_grid;%添加格网
[Z,LONG,LAT]=m_elev([-20 20 -30 30]);%返回经度,纬度,高度值

4、个性化坐标轴

4.1网格线与标签

clear all
m_proj('Lambert');
m_coast;
m_grid;%添加网格

m_ungrid;%去除网格

4.1.2

clear all
m_proj('Lambert');
m_coast;
m_grid('xtick',10,'tickdir','out','yaxislocation','right','fontsize',7);%grid设置

'box',( 'on' | 'off' | 'fancy' )

这个选项用来指定是否需要一个外轮廓。有三种外轮廓可供选择, on 默认值,就是简单的一条线,有两中 fancy 轮廓线可供使用,如果 tickdir 属性值是 in,会有一个黑白相间的条纹 ,如果 tickdir 设置为 out,会画出一个复杂的条纹,

'xtick',( num | [value1 value2 ...])

这条命令指定经度格网的位置和数值,如果只是给定了一个数,画出的格网线是近似等距的(这个数值是一个约数,因为 m_grid 总是想让间隔看起来更加好看),当使用位置向量可以指定准确的位置,, ytick 与此类似。 (平分几份)

'xticklabels',[label1;label2 ...]

指定标注的值,可以是数值,也可以使字符串, yticklabels 与此类似。

'xlabeldir', ( 'middle' | 'end' )

经度标签要么在格网线短点中间的位置(在格网线正交的位置),要么在这些格网线端点向外延伸位置, ylabeldir 与此类似。(默认 Middle);

'ticklen',value

指定标签的长度,类似 plot 中的 width;

'tickdir',( 'in' | 'out' )

指定标记实在内部还是外部,如果 box 被设置为 fancy,它有用来指定 fancy 的样式。

'tickstyle',( 'dd' | 'dm' )

指定坐标轴标注是用度的形式还是度分秒的形式,默认为度分秒的形式。

'color',colorspec
'linewidth', value
'linestyle', ( linespec | 'none' )
'fontsize',value
'fontname',name

指定线或者文件的一些属性

'XaxisLocation',( 'bottom' | 'middle' | 'top' )

指定在哪里做 X 轴,是在最底部还是最顶部还是中间。

'YaxisLocation',( 'left' | 'middle' | 'right' )

指定 Y 轴是在最左边,中间,还是在最右面

clear all
m_proj('Lambert');
m_coast;
m_grid('box','fancy','xtick',10,'ytick',8,'xticklabels',['a'; 'b';'c'],...
'ylabeldir', 'end', 'tickdir','in','yaxislocation','left','fontsize',10);更改标签,改变显示情况 

4.2标题和轴标记
用 title(„‟)和 xlabel,ylabel 可以为地图添加标题和坐标轴说明

title('北美兰勃脱','fontsize',15)
xlabel('longitude');
ylabel('latitude')

4.3 图例
可以用 m_legend 给一副地图添加图例,当前只有一部分图例的功能可以使用,通过使
用鼠标可以拖动或者删除图例。

4.4 比例尺
m_ruler位置使用规范化坐标, {0,1}之间,所以你可以注记调整它在地图中的位置,最好在调用了 m_grid 之后调用他,因为 m_grid重置了初始化值。

clear all
m_proj('Lambert');
m_coast;
m_grid('box','fancy','xtick',10,'ytick',8,'xticklabels',['a'; 'b';'c'],...
'ylabeldir', 'end', 'tickdir','in','yaxislocation','left','fontsize',10);
title('北美兰勃脱','fontsize',15)
xlabel('longitude');
ylabel('latitude')
m_ruler([0.1 0.3],1);

5 添加自己的数据

5.1.1 画线、文本、箭头、填充、等高线等

m_plot(LONG,LAT,...line properties) % draw a line on a map (erase current plot)
m_line(LONG,LAT,...line properties) % draw a line on a map
m_quiver(LONG,LAT,U,V,S) % A quiver plot
m_text(LONG,LAT,'string') % Text
m_patch(LONG,LAT,..patch properties) % Patches.

m_patch出现错误时,试着使用命令 flipud 或者 fliplr 来扭转点的顺序。

以经纬度方式组织的格网数据也可以 contoured:

m_contour(LONG,LAT,VALUES)

m_contourf(LONG,LAT,VALUES)

这个功能也可以返回图形对象句柄。

[cs,h]=m_contour(LONG,LAT,VALUES)

clabel(cs,h,'fontsize',6);

5.1.2

将经纬度坐标转换成投影坐标

[X,Y]=m_ll2xy(LONG,LAT, ...optional clipping arguments )

5.1.3

将投影坐标转换成经纬度坐标

[LONG,LAT]=m_xy2ll(X,Y)

5.1.4从图像中移除数据

clear all
m_proj('lambert','long',[-160 -40],'lat',[30 80]);
m_coast;
m_grid;
m_range_ring(-123,49,[1e3:1e3:10e3],'color','r');

m_ungrid range_ring%将其移除
m_range_ring(-123,49,[200:200:2000],'color','r');%重新画

没 1000 公里画一个圆, 但我对此不满意,想要仅仅使用 200 千米的增量重新画,我可以移除 m_range_ring 然后重新画:

m_angthing 都可以通过调用

m_ungrid angthing 来将其移除。

Matlab——m_map指南(2)的更多相关文章

  1. Matlab——m_map指南(3)——实例

    m_map 实例 1. clear all m_proj('ortho','lat', 48,'long',-123');%投影方式,范围 m_coast('patch','r');%红色填充 m_g ...

  2. Matlab——m_map指南(4)——实例

    1. 全球/地区温度图 (1)读取数据 clear all setup_nctoolbox %调用工具包 tic %计时 %% nc=ncgeodataset('tmpsfc.gdas.199401. ...

  3. MATLAB——m_map指南(1)

    1.例图 (1) clear all m_proj('oblique mercator');%确定投影方式和绘图界线 m_coast;%画出海岸线 m_grid;%添加格网 第一行代码初始化投影,对于 ...

  4. matlab添加M_map工具箱(转 http://blog.sina.com.cn/s/blog_491b86bf0100srt9.html)

    之前转载过matlab画世界地图的博文.最近正好用到.首先试了matlab自带的worldmap,感觉画出来的图形不尽如人意,比较杂乱.如下图. 略查阅了些资料,请教了Liangjing,一致推荐m_ ...

  5. MATLAB 地图工具箱 m_map 的安装和入门技巧(转)

    reference: http://blog.sina.com.cn/s/blog_8fc890a20102v6pm.html   需要用一些地图工具,arcgis懒得装了,GMT(generic m ...

  6. (转)JAVA 调用matlab

    本文仅用于学习. 原文地址链接:http://blog.csdn.net/wannshan/article/details/5907877 前段时间摸索了java调用matlab东西,不说学的有多深, ...

  7. MATLAB 中gcf、gca 以及gco 的区别

    MATLAB 中gcf.gca 以及gco 的区别gcf 返回当前Figure 对象的句柄值gca 返回当前axes 对象的句柄值gco 返回当前鼠标单击的句柄值,该对象可以是除root 对象外的任意 ...

  8. MATLAB 编程风格指南及注意事项

    MATLAB编程风格指南Richard Johnson 著Genial 译MATLAB 编程风格指南Richard JohnsonVersion 1.5,Oct. 2002版权: Datatool 所 ...

  9. matlab利用m_map工具包画中国地图及散点云图

    开始之前需要准备好malab,中国地图shp文件,m_map工具包. 中国地图shp文件可以在下面的链接中下载: https://gadm.org/download_country_v3.html 本 ...

随机推荐

  1. C++ non-const lvalue reference cannot bind to a temporary

    1. 问题代码 #include <iostream> #include <vector> //注意begin和end形参都声明为引用 bool find_int(std::v ...

  2. 关于Java序列化的问题你真的会吗?

    引言 在持久化数据对象的时候我们很少使用Java序列化,而是使用数据库等方式来实现.但是在我看来,Java 序列化是一个很重要的内容,序列化不仅可以保存对象到磁盘进行持久化,还可以通过网络传输.在平时 ...

  3. weex 和 appcan 的个人理解

    appcan是浏览器技术,前端代码运行在webview上,而weex是原生引擎渲染,说白了就是把H5翻译成原生. weex的官网上说,在开发weex页面就像开发普通网页一样,在渲染weex页面时和原生 ...

  4. 基于JWT实现token验证

    JWT的介绍 Json Web Token(JWT)是目前比较流行的跨域认证解决方案,是一种基于JSON的开发标准,由于数据是可以经过签名加密的,比较安全可靠,一般用于前端和服务器之间传递信息,也可以 ...

  5. openwrt 上的 upnp wifi 音频推送 gmediarender

    首先是必须启用的模块 Libraries ---> <*> libupnp Sound ---> <*> alsa-utils<*> madplay-a ...

  6. Fortify Audit Workbench 笔记 Access Control: Database

    Abstract 如果没有适当的 access control,就会执行一个包含用户控制主键的 SQL 指令,从而允许攻击者访问未经授权的记录. Explanation Database access ...

  7. Logitech k480 蓝牙键盘连接 ubuntu 系统

    k480 能同时连接三台蓝牙设备,支持 Windows.Android.Chrome.Mac OS X 和 iOS 系统.奈何官方并不支持 Ubuntu. 有压迫就有反抗,呃...,不对,总是有办法在 ...

  8. 【BIM】BIMFACE中创建矢量文本[下篇]

    背景 在上一篇文章中,我们通过THREEJS创建了矢量文本,并添加到了BIMFACE场景中,但是仅仅加入到场景中并不是我们的目的,我们的目的是把这种矢量文本加到指定的构件或者空间上,以此标识该构件或空 ...

  9. RPA如何跑赢传统自动化和人工?

    过去的4年时间里,RPA(机器人流程自动化)一词,在Gartner的搜索引擎中一直排名前五.去年Gartner发表的调查数据中显示,RPA行业在2018年保持了60%以上的增长速度,从而成为全球增长最 ...

  10. java网络编程——多线程数据收发并行

    基本介绍与思路 收发并行 前一篇博客中,完成了客户端与服务端的简单TCP交互,但这种交互是触发式的:客户端发送一条消息,服务端收到后再回送一条.没有做到收发并行.收发并行的字面意思很容易理解,即数据的 ...