一.绘制点
%生成背景地图地图  
h = worldmap('France');
%读取和显示大陆架  
landareas = shaperead('landareas.shp','UseGeoCoords', true);  
geoshow (landareas, 'FaceColor', [1 1 .5]);  
%埃菲尔铁塔的坐标  
TowerLon = 2.28;%经度坐标  
TowerLat = 48.85;%纬度坐标  
%用红色标记绘制%埃菲尔铁塔  
geoshow(TowerLat, TowerLon, 'Marker','.','MarkerEdgeColor','red')  
                                  %点显示             红色点
textm(TowerLat,TowerLon + 0.5, 'Eiffel Tower');%放置文本  

绘制的图像如下:

二.绘制线段、河流

%生成背景地图地图  
worldmap world;  
framem on;%set the map axes property Frame to 'on' or 'off'. The default setting for map axes is 'off'.
%绘制线条  
linem([15; 0; -45; -25],[-100; 0; 70; 110],'r-') 
linem([15; -30; -60; -65],[-100; -20; 100; 150],'b-')  
linem([15; 20; 40; 20],[-100; -20; 40; 50], 'g-')  
 

绘制的线条结果如下:

绘制线条在地图中是很常用的,geoshow的内部就是调用linem来绘制河流的:

clc;clear;
clf;%Clear current figure window
%生成背景地图地图  
h = worldmap('France');
landareas = shaperead('landareas.shp','UseGeoCoords', true);  
geoshow (landareas, 'FaceColor', [1 1 .5]);  
%河流数据
rivers = shaperead('worldrivers', 'UseGeoCoords', true);  
%rivers =   128x1 struct array(128条河流) with fields:  
     %   Geometry  几何结构:线型
     %   BoundingBox  河流端点的经纬度
     %   Lon  纬度(点集)
     %   Lat  经度(与经度对应)
     %   Name  名字
%显示河流  
geoshow(rivers, 'Color', 'blue') ·
rivers(8)  %查看rivers的第八个元素的信息 

绘制的图形如下:

三.绘制多边形、州

%多边形的顶点坐标  
%注意:数据中多边形的初始顶点和结束顶点必须重合 
x = [40 55 33 10 0  5  10 40 NaN 10 25 30 25 10 10 NaN 90 80 65 80 90 NaN];  
y = [50 20 0  0  15 25 55 50 NaN 20 10 10 20 30 20 NaN 10 0  20 25 10 NaN];  
mapshow(x,y,'DisplayType','polygon') %可以更改'DisplayType'的参数,具体查看帮助
%mapshow绘制'polygon',注意多边形顶点的环绕方向:
%1/顺时针为正,里面被填充->"面"  
%2/逆时针为负,里面不被填充->"洞"  

使用geoshow来绘制美国的地图,每个州都是一个多边形结构:view plain

figure; ax = usamap('conus');  
axis off                            %不显示坐标轴
states = shaperead('usastatelo', 'UseGeoCoords', true);  
    %states =   51x1 struct array(51个州) with fields:
    %每个州都有如下属性,例如取出states(1)
    %        Geometry: 'Polygon'      几何属性是:多边形
    %     BoundingBox: [2x2 double]   最小、最大边界点的坐标
    %             Lon: [1x105 double] 点的纬度
    %             Lat: [1x105 double] 点的经度、这些离散点闭合组成一个州
    %            Name: 'Alabama'      州的名称
    %        LabelLat: 32.282672      
    %        LabelLon: -86.9206  
    %     PopDens2000: 87.6  
indexConus = 1:numel(states);%州的数目  
stateColor = [0.5 1 0.5];    %设置颜色  
%画出所有的州,方法一:
geoshow(ax, states(indexConus), 'FaceColor', stateColor) %更精确
%画出所有的州,方法二:
%geoshow(ax, states, 'FaceColor', stateColor)  
%只画出一个州
%geoshow(ax, states(1), 'FaceColor', stateColor)   
setm(ax, 'Frame', 'off', 'Grid', 'off',...    %Set properties of map axes and graphics objects 
     'ParallelLabel', 'off', 'MeridianLabel', 'off')  
         %平行圈                   %子午圈
绘制的图形如下:
原文链接:https://blog.csdn.net/rumswell/article/details/16927565
 
 
 
 

[转][修]利用matlab绘制地图上的点、线、面的更多相关文章

  1. SAS学习笔记14 利用SAS绘制地图(二)

    笔记9讲过利用SAS绘制地图,这次接着讲 用中国各地(不含港澳台)的平均湿度数据来绘制地图 在地图上标出地名 宏%maplabel有9个参数,依次为:地图文件名.包含区域名称的数据集文件.输出的注释数 ...

  2. SAS学习笔记9 利用SAS绘制地图

    绘制世界地图 proc gmap过程: map=指定绘图的map数据集 data=指定地图的对应数据集 id指定map数据集和对应数据集中都有的变量,一般为各区域的代码,作为两个数据集的连接变量 分色 ...

  3. 利用Matlab快速绘制栅格地图

    代码演示 % 基于栅格地图的机器人路径规划算法 % 第1节:利用Matlab快速绘制栅格地图 clc clear close all %% 构建颜色MAP图 cmap = [1 1 1; ... % ...

  4. 利用百度API(JavaScript 版)实现在地图上绘制任一多边形,并判断给定经纬度是否在多边形范围内。以及两点间的测距功能

    权声明:本文为博主原创文章,未经博主允许不得转载. 利用百度API(JavaScript 版)实现在地图上绘制任一多边形,并判断给定经纬度是否在多边形范围内.以及两点间的测距功能. 绘制多边形(蓝色) ...

  5. iOS开发之在地图上绘制出你运行的轨迹

    首先我们看下如何在地图上绘制曲线.在Map Kit中提供了一个叫MKPolyline的类,我们可以利用它来绘制曲线,先看个简单的例子. 使用下面代码从一个文件中读取出经纬度,然后创建一个路径:MKPo ...

  6. 在谷歌地图上绘制行政区域轮廓【结合高德地图的API】

    实现思路: 1.利用高德地图行政区域API获得坐标列表 2.将坐标列表绘制在谷歌地图上[因为高德地图和国内的谷歌地图都是采用GCJ02坐标系,所有误差很小,可以不进行坐标误差转换] 注意点: 1.用百 ...

  7. 利用ps在光污染地图上寻找最近的观星地区

    城市灯光对于天文观测和天文摄影是有害的,进行这两类活动之前应提前规划地点,下面是笔者尝试的一种利用ps在光污染地图上进行规划的方法. 目前大部分的光污染地图都是基于WA 2015绘制的,可以结合VII ...

  8. 在echarts里在geojson绘制的地图上展示散点图(气泡)、线集。

    先来要实现的效果图: 下方图1是官网的案例:http://www.echartsjs.com/gallery/editor.html?c=scatter-map 下图2是展示气泡类型为pin的效果: ...

  9. 用matlab绘制中国地图

    reference:https://jingyan.baidu.com/article/870c6fc36fdacfb03ee4be58.html shp: http://muchong.com/ht ...

随机推荐

  1. 20165330 2017-2018-2 《Java程序设计》第1周学习总结

    教材学习内容总结 java的历史,地位,特点. java的平台介绍 java应用程序的开发及源文件的编写规则 java反编译特点 安装JDK Windows上 在安装JDK后设置系统环境变量,因为我的 ...

  2. PHP file_get_contents和curl区别

    一.file_get_contents 1.定义 file_get_contents() 函数将指定 URL 的文件读入一个字符串并返回. 2.语法 file_get_contents(path, i ...

  3. JUnit4.12 源码分析之Statement

    1. Statement 抽象类Statement作为命令模式的Command,只有一个方法 各种Runner作为命令模式中的Invoker,将发出各种Statement,来表示它们运行JUnit测试 ...

  4. HBase简单API

    一.使用IDEA的maven工程,工程结构如下: 二.maven的依赖pom.xml文件 <?xml version="1.0" encoding="UTF-8&q ...

  5. librosa音频特征提取,python librosa库在centos上依赖llvm的问题?

    win10下安装使用: https://blog.csdn.net/qq_39516859/article/details/80679718 https://blog.csdn.net/qq_3951 ...

  6. js的class属性获取、增加、移除

    2018年4月10日,北京城的第三份工作已经开始,坚信自己在这里能学到很多,加油! 贴代码,昨天回顾了一点js知识: <script> $(function(){ //赋予一个点击事件 $ ...

  7. Go学习笔记一:解析toml配置文件

    本文系作者原创,转载请注明出处https://www.cnblogs.com/sonofelice/p/9085291.html . 一些mysql或者日志路径的信息需要放在配置文件中.那么本博文主要 ...

  8. 从HD OJ 1005想到的

    杭电OJ [1005](http://acm.hdu.edu.cn/showproblem.php?pid=1005): #####Problem Description > A number ...

  9. Spark2.0 Pipelines

    MLlib中众多机器学习算法API在单一管道或工作流中更容易相互结合起来使用.管道的思想主要是受到scikit-learn库的启发. ML API使用Spark SQL中的DataFrame作为机器学 ...

  10. intellij idea 重命名或复制一个项目(不用重启)

    Idea 内无法直接修改Explorer 里文件夹的名称,只能手动改文件夹的名称. 目前找到的最好的方法: 1)重命名一个项目 在Idea 项目关闭状态下,在 Explorer (Windows) / ...