一.绘制点
%生成背景地图地图  
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. PHP函数addslashes和mysql_real_escape_string的区别

    转自:http://www.jb51.net/article/49205.htm   这篇文章主要介绍了PHP函数addslashes和mysql_real_escape_string的区别,以及一个 ...

  2. [报错]Unable to simultaneously satisfy constraints

    项目中自定义Cell,控件使用autoLayout来设置约束,发现运行页面表现正常,但是控制台报如下错误: Unable to simultaneously satisfy constraints. ...

  3. mysql创建用户,以及分配权限

    创建用户create user test identified by '123456'; 删除用户DROP USER ''@'localhost'; //删除所有host为localhost的用户 给 ...

  4. Spring Data @Query查询注解的使用(六)

    按照上一篇文章 我们知道  我们定义的方法  都要根据它的规范进行定义  不然就没法实用 这篇我们讲@Query 查询注解   我们就可以不需要遵循它的方法规则去编写  咱们讲@Query定义到方法上 ...

  5. c 浮点数

    一.二进制小数 十进制小数: 12.3410 == 1 * 101 + 2 * 100 + 3 * 10-1 + 4 * 10-2 = 12(34/100) (可能很多人还不知道怎么计算一个数的负幂, ...

  6. PHP 错误日志

    display_errors 错误回显,一般常用语开发模式,但是很多应用在正式环境中也忘记了关闭此选项.错误回显可以暴露出非常多的敏感信息,为攻击者下一步攻击提供便利.推荐关闭此选项. display ...

  7. MapReduce辅助排序

    需求:订单数据 求出每个订单中最贵的商品? 订单id正序,成交金额倒序. 结果文件三个,每个结果文件只要一条数据. 1.Mapper类 package com.css.order.mr; import ...

  8. Mysql中字段类型之时间戳大坑

         一 .环境说明: 在目前项目中,有这样的一张表,用来记录会议的相关信息,例如:会议的内容.会议的参会人员.会议的地点.会议的状态(会议是否已结束.会议是否被撤销).会议的开始时间以及该条信息 ...

  9. docker-compose部署zk集群、kafka集群以及kafka-manager,及其遇到的问题和解决

    zk集群docker-compose.yml 1.新建网络 docker network create --driver bridge --subnet --gateway 172.23.0.1 zo ...

  10. Linux系统性能调优之性能分析

    1.Linux性能分析的目的1)找出系统性能瓶颈(包括硬件瓶颈和软件瓶颈):2)提供性能优化的方案(升级硬件?改进系统系统结构?):3)达到合理的硬件和软件配置:4)使系统资源使用达到最大的平衡.(一 ...