一.绘制点
%生成背景地图地图  
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. Tomcat----->软件密码学基础配置tomcat http连接器 https

    公钥只能私钥解开,私钥只能公钥解开. 类似于别人给你一个盒子,你用他的盒子和自己盒子加密,他手中有他的钥匙和自己的钥匙,可以解开就既能证明是你发的也能相信内容. 每个数据有自己的数据指纹,数据指纹是由 ...

  2. Mongodb系列文章

    http://blog.csdn.net/congcong68 学习MongoDB 六: MongoDB查询(游标操作.游标信息)(三) Mongodb官方C#驱动示例 MongoDB Driver ...

  3. php 验证上传图片尺寸

    getimagesize 函数 取得图像大小 (PHP 4, PHP 5) array getimagesize ( string filename [, array &imageinfo] ...

  4. 剑指Offer——连续子数组的最大和

    题目描述: HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学.今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决.但是,如果向 ...

  5. AndroidStudio修改常用快捷键

    近期公司开发工具要从eclipse转向Androidstudio,安装好as后当然迫不及待地要将快捷键修改为eclipse中的快捷键啦,下面是个人的一些小的总结. 1.首先当然要打开快捷键的设置界面啦 ...

  6. git学习------>如何汉化GitLab?

    在上一篇博客中,已经正常安装好了GitLab,然而全部界面都是纯英文的,为了照顾整个团队的英文水平,因此这篇博客的目的是将纯英文的GitLab进行汉化. 纯英文界面 第一步: 确认GitLab版本号 ...

  7. 【我的Android进阶之旅】TortoiseSVN 客户端 如何重置用户名和密码?

    在第一次使用TortoiseSVN从服务器CheckOut的时候,会要求输入用户名和密码,这时输入框下面有个选项是保存认证信息,如果选了这个选项,那么以后就不用每次都输入一遍用户名密码了. 不过,今天 ...

  8. 『HTML5挑战经典』是英雄就下100层-开源讲座(一)从天而降的英雄

    是英雄就下100层是一款经典的手机小游戏,以前是在诺基亚手机上十分有名.今天我们就用HTML5和lufylegend一步步地实现它. 一,准备工作 首先,你需要下载lufylegend,下载地址如下: ...

  9. Laravel 5.3 使用内置的 Auth 组件实现多用户认证功能

    https://blog.csdn.net/kevinbai_cn/article/details/54341779 概述 在开发中,我们经常会遇到多种类型的用户的认证问题,比如后台的管理员和前台的普 ...

  10. java的TimeUtils或者DateUtils的编写心得

    一.几种常见的日期和时间类介绍 介绍时间工具类不可避免必须要去触碰几个常见的日期和时间类,所以就简单介绍一下. 1.jdk1.8之前的日期时间类 a.Date类 我们可以通过new的方式生成一个Dat ...