0、GIS的基本概念

栅格数据与矢量数据


上图中,a为图形模拟表示的地理对象,b为控件对象对应的栅格数据模型表示,c为对应的矢量数据模型表示。

矢量模型的表达源于原型空间实体本身,通常以坐标来定义。一个点的位置可以二维或者三维中的坐标的单一集合来描述。一条线通常由有序的两个或者多个坐标对集合来表示。特定坐标之间线的路径可以是一个线性函数或者一个较高次的数学函数,而线本身可以由中 间点的集合来确定。一个面通常由一个边界来定义,而边界是由形成一个封闭的环状的一条或多条线所组成。如果区域有个洞在其中,那么可以采用多个环以描述它。

基于栅格的空间模型把空间看作像元(Pixel)的划分,每个像元都与分类或者标识所包含的现象的一个记录有关。像元与“栅格”两者都是来自图像处理的内容,其中单个的图像可以通过扫描每个栅格产生。GIS 中栅格数据经常是来自人工和卫星遥感扫描设备中,以及用于数字化文件的设备中。采用栅格模型的信息系统,通常应用了前面所述 的分层的方法。在每个图层中栅格像元记录了特殊的现象的存在。每个像元的值表明了在已知类中现象的分类情况。

下图表示矢量数据结构

下图表示栅格数据模型

总的来说,栅格图是一个规则的阵列,包含着一定数量的像元或者栅格;而矢量图是由一组描述点、线、面,以及它们的色彩、位置的数据,通过软件算法计算得到的图形。
常用的栅格图格式有:tif,png,jpeg/jpg等,处理软件如PS;
常用的矢量图格式有:shp、eps、dwg、dxf等,处理软件如AutoCAD、AI等。
ArcGIS可以同时处理栅格数据与矢量数据,常用的栅格数据格式为tif,常用的矢量数据格式为shapefile、coverage、TIN等。

GIS中常用的矢量数据格式

shapefile

shapefile 是一种用于存储地理要素的几何位置和属性信息的非拓扑简单格式。shapefile 中的地理要素可通过点、线或面(区域)来表示。shapefile 格式在应存储在同一项目工作空间且使用特定文件扩展名的三个或更多文件中定义地理配准要素的几何和属性

coverage

Coverage 是一种用于存储矢量数据的地理相关数据模型,它包含地理要素的空间(位置)数据和属性(描述性)数据。Coverage 使用一组要素类来表示地理要素。每个要素类存储一组点、线(弧)、面或注记(文本)。Coverage 可以具有拓扑,用于确定要素间的关系。
Coverage文件包括两个文件夹,一个是info文件夹,一个是以文件名命名的文件夹(文件夹中重要文件包括AAT.DBF、BND.DBF、PAT.DBF、TIC.DBF、PRJ和ARC等。其中,ARC是用于定义地物空间位置和关系的拓扑数据结构;PRJ是投影文件;TIC是一个控制点文件;BND是一个边界文件;PAT是一个多边形属性或点属性表;AAT是一个弧段属性。)

geojson

geojson是一种基于json的地理空间数据交换格式,它定义了几种类型JSON对象以及它们组合在一起的方法,以表示有关地理要素、属性和它们的空间范围的数据。geojson是非常常见的地图服务前后端传输格式。

topojson

topojson是 geojson 按拓扑学编码后的扩展形式,对拓扑进行编码。相比 geojson 直接使用 polygon、point 之类的几何体来表示图形的方法,topojson 中的每一个几何体都是通过将共享边(被称为arcs)整合后组成的。

GIS中矢量数据的数据层级


GIS中矢量数据可以分为地图层、数据层、要素层、几何层及属性层。


对于ArcGIS,当我们打开一个包含矢量数据的MXD文件,会看到数据框及图层。数据框将显示以特定顺序绘制的一系列图层。每个图层都会引用存储在地理数据库、coverage、shapefile 和栅格等中的数据集。每个图层对应着一个要素类。比如在GIS中直接打开CAD文件,可以看到GIS将标注、点、线、面、多面体等按类分为单独的图层。对于每个矢量图层来说,里面存储的要素类只能有一种,或是点或是线或是面。

打开图层中的属性表,会看到图层中各要素的shape、其他属性字段及属性值。shape即几何,对应着显示的矢量图像。

#伪代码
shp_datatset = ogr.Open(input_shape)
layer = shp_datatset.GetLayer()
feat = layer.GetFeature(0)
polygon_shp = feat.GetGeometryRef()
outring = polygon_shp.GetGeometryRef(0)
outring.GetPoints(0)

而在GDAL中,我们可以通过ogr读取矢量文件,调用封装的方法读取图层,接着调用方法可以读取要素,最后可以读取到多边形的外环及外环对应的点。

1、ArcGIS矢量空间分析


矢量数据的空间分析。矢量空间分析,主要包括缓冲区分析、叠加分析、网络分析及追踪分析。其中网络分析虽然也是利用矢量数据进行分析的,但其数据模型与缓冲区分析和叠加分析所使用的数据模型有所区别,在进行网络分析前需要构建网络数据集。以下主要介绍缓冲区分析和叠加分析。

缓冲区分析

缓冲区程序将遍历输入要素的每个折点并创建缓冲区偏移。通过这些偏移创建输出缓冲区要素。ArcGIS中缓冲区分析可以使用缓冲向导或缓冲区工具进行操作。在ArcGIS中,构建缓冲区有两种基本方法,欧式方法和测地线方法。

  • 如果输入要素位于投影坐标系中,则将创建欧氏缓冲区。
  • 如果输入要素位于地理坐标系中且指定的缓冲距离单位为线性单位(米、英尺等,而非诸如度之类的角度单位),则会创建测地线缓冲区。

欧氏缓冲区是更常见的缓冲区类型,特别适合于分析投影坐标系中要素周围的距离,这些距离侧重于相对较小的区域(如一个 UTM 带)。当输入要素处于分散状态(覆盖多个 UTM 带、大面积区域甚至整个地球),或
输入要素的空间参考(地图投影)为保留其他属性(如面积)使距离发生变形。则应始终考虑创建测地线缓冲区
具体可以参见官方文档说明:https://desktop.arcgis.com/zh-cn/arcmap/latest/tools/analysis-toolbox/how-buffer-analysis-works.htm

叠加分析

叠加分析包括擦除(Erase)、标识叠加(Identify)、图层相交(Intersect)、交集取反(Symmetrical Difference)、联合(Union)、更新修正(Update)。


其中可能比较不好理解的可能是标识叠加和更新修正,建议实际操作一下。我这里简单举例说明一下。
首先是标识叠加,顾名思义,可以理解为通过叠加另一要素对原要素进行标识。通常是用多边形要素来标识其他要素。比如我们用test1图层来标识test11,标识叠加后,test11中的先要素会被切分为两部分,相交部分,未相交部分。(ALL情况)test11属性会全部增加到线test1上,并有一个独特的标识属性(值为负1或1),该方法可以用来筛选在面上或线上的点要素。

而对于更新修正,我的理解是修正更新会将两者相交的部分要素的字段属性值修正为更新要素,更新要素无对应字段时,该字段修正为空。

通常我们使用用某一个多边形图层的部分图斑来修正该图层,比如用test1的部分更新test1,可以看到,直接将覆盖test1的对应属性的值。

3、实例练习

操作视频见:https://www.bilibili.com/video/BV1zP4y1278K
实例练习材料及本文PPT链接(exe为自解压文件):
https://www.aliyundrive.com/s/vt9dQUHMi7s 提取码: 9a5a

4、参考资料:

科普 | GIS数据格式汇总解析
关于地理数据格式—ArcMap | 文档
GDAL中文文档
ArcGIS地理信息系统空间分析实验教程/汤国安,杨昕编著.—北京∶科学出版社,2006
ArcGIS地理信息系统空间分析实验教程/汤国安,杨昕编著.—2版.—北京∶科学出版社,2012
地理信息系统导论/(美)张康聪(Chang,K.T.)著;陈健飞,张筱林译. —5版.—北京∶科学出版社,2010
ArcGIS 地理信息系统分析与应用 / 晁怡,郑贵洲,杨乃编著. —北京:电子工业出版社,2018.6 高等学校教材

【GIS】GIS矢量空间分析(上)相关推荐

  1. 当代GIS技术的现状分析

    GIS技术是什么?实际上它是一种以自然地理空间为基础,选用地理模型分析方法,能够为大家实时提升空间与动态性地理信息的技术.近年来,非常是伴随着人工智能技术.互联网大数据分析.物联网技术等技术的发展趋势 ...

  2. ArcGIS空间分析要点学习

    缓冲区分析 缓冲区分析是针对点.线.面等地理实体,自动在其周围建立一定宽度范围的缓冲区多边形. 邻近度描述了地理空间中两个地物距离相近的程度. 交通沿线或河流沿线的地物有其独特的重要性. 公共设施的服 ...

  3. 一直在构建工作空间_国际资讯Python与地理空间分析

    点击图片上方蓝色字体"慧天地"即可订阅 英文原文来源:www.gislounge.com 英文原文链接:https://www.gislounge.com/python-and-g ...

  4. 空间分析方法在计算机上的应用,空间分析

    空间分析是对于地理空间现象的定量研究,其常规能力是操纵空间数据使之成为不同的形式,并且提取其潜在的信息.空间分析是GIS的核心.空间分析能力[1] (特别是对空间隐含信息的提取和传输能力)是地理信息系 ...

  5. 空间分析建模目的_房产测绘与二三维一体化建模研究——以连云港市为例

    王玉振丨连云港市住房局信息管理中心 连云港市早期测绘资料以手工编制和管理为主,2002年开始应用CAD技术,但其管理和利用程度仍较为低下,其图形数据无法应用到房产信息系统中,无法做到以图管房,无法真正 ...

  6. softlayer iso_在SoftLayer云中启用地图和地理空间分析

    存档日期:2019年5月14日 | 上次更新时间:2014年8月26日 | 首次发布:2012年9月5日 基于云的基础架构正在成为用于管理硬件资源,降低成本和优化基础架构的下一代IT平台. 与云基础架 ...

  7. GIS空间分析(五)—— 位置与几何关系分析

    位置与几何关系分析 位置是空间对象的基本特征,矢量叠加分析.地图代数.选址分析等经典GIS空间分析方法都是基于位置特征分析方法的代表.空间几何关系分析主要是对空间目标之间由位置.形状.方位.连通性和相 ...

  8. 基于ArcGIS:GIS空间分析复习-理论概念+案例分析

    目录 01 第一章 1.1 GIS空间分析的概念 1.2 GIS空间分析的研究对象.研究目标 1.3 研究目标是:认知.解释.预报.调控. 1.4 道路拓宽案例分析 1.5 GIS空间分析的核心问题 ...

  9. 使用GIS空间分析进行植物生长区域选址(附练习数据下载)

    经过观察可以发现某种珍贵植物在山区的某个区域位置生长状况明显要比其他区域好很多,通过研究了解到这种植物生长具有严格的生长条件.为了能更好地保护该种植物的生长环境,现在需要使用GIS空间分析方法,将适合 ...

  10. 开源的前端GIS空间分析库介绍 (三)turf与ol结合

    前言 turf是mapbox出品的前端空间分析库,官网:http://turfjs.org/ turf库中包含的空间分析计算功能比较多,也非常简单易用.相比于jsts,turf的官方文档维护的非常好, ...

最新文章

  1. SR:嗜酸古菌的代谢和进化模式
  2. 深度解析(十五)哈夫曼树
  3. Error: Could not find or load main class
  4. [置顶]       cocos2d-x 手游源码站
  5. 识别物体是否存在_【科学实践Vol.1】带你玩转“人脸识别”
  6. mysql二进制安装方法
  7. location.href
  8. Linux之忘记密码解决方案
  9. R语言实战应用精讲50篇(十七)--使用R语言实现时间序列分析
  10. python random函数sample_Python random.sample()用法及代码示例
  11. eNSP——通过Stelnet登录系统网络配置实验
  12. 华为鸿蒙系统新闻点评,关于华为鸿蒙操作系统,品牌专家是这样点评的
  13. 酷派Y60-C1官方ROM内容解析
  14. 单臂路由器互联VLAN实验-Cisco Packet Tracer
  15. [re]符号执行一把梭:2020网鼎杯青龙组re_signal_wp
  16. 网易杭研易盾实习心得
  17. 牛客国庆集训派对Day1 New Game!+计算几何
  18. 怎么远程计算机控制系统,电脑远程控制怎么弄 电脑进行远程控制详细教程
  19. 神奇英语语法系列(三)——状语从句
  20. Harmonyos官网申请的,HarmonyOS 2.0手机开发者Beta公测招募,普通用户有没有必要申请?...

热门文章

  1. 、谷歌离线地图开发教程
  2. php zscan,PHP redis SCAN、SSCAN、ZSCAN、HSCAN 的使用, pipe 快速redis插入数据
  3. JDK环境变量正确设置之后还是不生效
  4. BeanUtils.copyProperties设置忽略null字段
  5. 中国燕麦片市场销售现状与十四五发展趋势分析报告2022年版
  6. Android 10.0 去掉开机正在优化应用Dialog
  7. 滚动字幕特效大全代码 (转)
  8. html如何上下滚动字幕,html页面实现滚动字幕
  9. 【在线电子书制作】云展网教程 | 文本复制按钮
  10. 游戏开发 cocosBuilder cocosCreator cocosPods