数据生产中,其中一个核心问题便是数据质量检查,针对数据检查问题本小节主要介绍矢量数据的检查。我们知道数据的基础检查包括数量数据逻辑一致性的检查、矢量图层综合性检查和元数据检查(悄悄的告诉你,在国外,元数据是一个灰常重要的东西,可能于他们思维方式有关),而对于矢量数据的数学基础检查,则表现为空间图层要素属性及关系的检查。说这么多可能还是没有任何概念,那么我们就更加细化的说,数据结构是否正确、值是否符合标准、有无遗漏、拓扑是否一致、图斑是否有碎片、接边是否有问题、属性值是否完全正确等等一系列的问题。
针对上述问题本文给出部分解决方案。首先对于属性检查,我们主要看两个方面,表结构是否完整、属性域是否符合标准(也就是字段值范围是否正确);属性查询和属性统计两个工具可以很好的解决这个问题;空间关系检查,即碎图斑、接边问题以及拓扑问题,ArcGIS中提供了专门的拓扑工具对该问题进行解决,它不仅可以验证地理数据库,更可以对要素间的空间关系建模。
先来简单介绍一下拓扑的基础知识。
拓扑对象:点、线和面的空间位置关系。
拓扑规则:拓扑基于地理数据库(MDB、GDB、SDE),(Tip:shp文件是不能进行拓扑检查的),首先要建立Feature Dataset(要素集),把需要检查的数据放在同一要素集下,要素集和检查数据的数据基础(坐标系统、坐标范围)要一致,有拓扑时要先删除拓扑
拓扑分类:
一个图层自身拓扑:数据类型肯定一致,要么是点,要么线、要么面
两个图层之间的拓扑:数据类型可能不同,有线点、点面、线面、线线、面面五种,检查前提必须在同一要素集下,数据基础(坐标系统、坐标范围)要一致。
点层:一个图层ArcGIS中没有拓扑检查
线层:不能有线重合、不能有线相交、不能有悬挂节点(一个点需要连两个以上的线)、线不能有伪节点、不能线自相交、一个线要素只能由一个独立组成、线不能有相交和内节点接触
面层:不能重叠、连续面不能有缝隙
点线拓扑检查点、线点拓扑检查线、点面拓扑检查点、面点拓扑检查面、线面拓扑检查线、面线拓扑检查面
两个图层之间的拓扑就是要素不能相互重叠,要素添加的的先后顺序无影响。
拓扑容差:就是拓扑错误,不同容差,错误个数不同,甚至在指定容差下有拓扑错误,如0.001,而容差为0.002,就没有了。拓扑容差大小与数据有关,通常默认即可。
拓扑建立:在数据库的要素集下进行,且确保之前无拓扑,有的话一定要删除。
拓扑检查:本身实际会改变数据,所以检查之前建议将原始数据备份。
拓扑编辑:对拓扑检查的结果进行编辑。
编辑方法:
完全重叠的话时:a)选中其中一条删除;b)选中重叠几条,使用区域线处理,重叠只保留一个;
部分重叠时:a)在错误上右键,选择subtract去除重复部分b)选中较短一条删除,c)选中重叠几条,使用区域线处理后,自动分段,后再合并。区域线还可以处理交叉线,在交叉点自动打断,八字图交叉也可以,面的交叉使用探索多部件要素。
想要了解更多知识,获得干货,关注微信公众号:GIS点滴