【超级干货】ArcGIS_空间连接_工具详解

帮助里对空间连接的解释:

根据空间关系将一个要素的属性连接到另一个要素。

目标要素和来自连接要素的被连接属性写入到输出要素类。

图片

如上图所示,关键在于空间关系,只有当两个要素存在空间关系的时候,空间连接才有用武之地。


一、使用方法

这里以ArcGIS Pro为例,有2种方法可以打开工具。

一是找到【分析工具-叠加分析-空间连接】。

二是直接在地理处理最上方的搜索栏里搜索【空间连接】。

图片


二、参数介绍

打开工具,可以看到下面的工具界面:

图片

1)目标要素

工具会在目标要素的基础上,将连接要素的字段添加到目标要素上,然后作为新要素输出 。

【目标要素的图形+字段+连接要素的字段(可选)=输出要素】

2)连接要素

如参数1所示,连接要素的图形是不会输出的,只会保留部分连接的字段。

图片

3)输出要素类

输出要素类保留了目标要素的图形和字段,另外也保留了连接要素的字段(按你选择的),如果二者有空间关系的话,相应的字段值也会保留下来

以上面的例子:

图片

连接要素中的【KFQMC、Shape_Length、Shape_Area】字段被连接到目标要素中。

(这里的Shape_Length、Shape_Area其实是Shape_Length_1、Shape_Area_1,因为目标要素中有同名字段,就被重命名了。不过这不重要,这2个字段一般情况是没用的)

可以看到连接要素字段的字段值中有一些是空值,这是因为这几个图斑和目标要素是没有相交的。

图片

4)连接操作

有时候,1个目标要素会和多个连接要素具有相同的空间关系,这时候就要区别一下连接的操作类型。包括【一对一连接、一对多连接】

【一对一连接】: 例如,如果两个独立的连接要素中找到了同一个目标要素,输出要素也只会生成一个要素,要素的字段值会根据规则进行聚合计算。

输出要素的个数和目标要素个数一致。

如果一个要素的属性值为3,另一个要素的属性值为7,且指定了“总和”合并规则,则输出要素类中的聚合值将为10。

图片

图片

截图所示是合并规是总和的情况,箭头所示地块的连接要素有2个【SZ字段为3和7】,连接后输出要素的SZ字段值为10。

这个功能一般可用于统计。

如果想取其中一个要素的属性值,像上面的情况,取3或者7。那就可以将合并规则改为【第一个】。

【一对多连接】:例如,如果两个独立的连接要素中找到了同一个目标要素,输出要素会生成两个重叠的要素,两个要素的字段值分别由连接要素中获取。

输出要素的个数要比目标要素个数多。

图片

如上图所示,一对多连接后,要素数从49变成了54,多出来的5个就是重叠的部分。

图片

5)保留所有的目标要素

如字面意思,如果不勾选这个选项,与连接要素没有空间关系的目标要素就不会保留。

图片

如果勾选,没有空间关系的要素仍然保留,但是相应的字段值是空值,如果不想要,也可以后续通过筛选空值去除掉。

所以一般情况下都是要保留的。

6)匹配选项

空间关系有很多种:

图片

截图没截全,这里也只介绍几个常用的。

如果想深入学习,需要自行探索,帮助里都有。

【相交】:这是最常用的,上面的例子也是基于相交,这是工具的默认设置。

【包含】:这个其实是相交很像,不常用,适用的情况基本都用相交了。

【完全包含】:如字面意思,只有完全包含才会被连接。

【与其他要素相同】:连接要素和目标要素必须具有相同的形状类型,并且在空间关系上是完全一致的。

【最近】:匹配连接要素中与目标要素最近的要素。

7)搜索半径

这个要和参数6配合使用,以相交为例,如果要素之间并没有相交,但是距离很近,可以设置一个探索半径,结果就可以当作相交来处理。

图片

如上图所示,目标要素和连接要素并没有相交,但是如果把搜索半径设为50米,生成结果会发现已经把字段值连接上去了,而不是空值。

8)字段映射

这个参数了不得,可修改的东西就太多了。

这里可以编辑输出要素的所有字段。

可以添加、删除、重命名和重新排序字段,而且可以更改其属性。

图片

想深入学习的同学一定要好好研究下。

合并规则也可以玩出很多东西,后面示例部分再详细说。

属性部分,字段的属性基本都可以修改,只能说太牛了。

图片


三、示例_建筑图斑连接地块名称

最简单的用法,就以给建筑图斑连接地块名称为例。

输入要素如下:

图片

工具设置如下,都按默认:

图片

生成结果如下:

图片

根据空间位置,地块名称被连接到建筑图斑中,后续可以根据字段统计各个地块内的建筑量。


四、示例_按最大重叠进行连接

根据上面的示例生成的建筑图斑,其实存在一个问题。

当一个建筑同时位于多个地块的时候,究竟应该标记哪个地块名。

图片

如截图中箭头所示地块,同时落位于二号地块和四号地块,结果连接的是二号地块,这是因为工具默认规则是【第一个】,即根据OBJIECTID顺序取第一个

但是这个结果并不合理,因为该图斑大部分位于四号地块中,理想的结果应该连接至四号地块,即和最大重叠的图斑连接。

只要将工具里的匹配模式修改成【最大重叠】即可:

图片

生成结果如下:

图片

可以看到,箭头所示建筑连接的结果是四号地块,观察其它建筑,都符合最大重叠的规则,完美!这是我在做建筑分析时遇到的一个问题。如下图左边的面,有些地形图因为时间久远或是测绘质量等问题,本来应该是连在一起的文字被打碎了。


五、示例_一个地块连接多个设施点

如下图左边的面,有些地形图因为时间久远或是测绘质量等问题,本来应该是连在一起的文字被打碎了。

图片

正常用【空间连接】工具的话,只会把第一顺位的单个文字连接到建筑面上,比如:【混】或者【2】。而实际我们需要的是【混2】。

这时候就需要将合并规则设置为【连接】。

图片

生成结果如下:

图片

用这个方法连接文字后,还会有一个问题。正常连接后,我们得到的文字一般是【混3、砖2……】。想要提取建筑结构的时候,只要取第一个文字就能达到目的。但是现在有可能会出现【3混、砖2……】的情况,不能保证第一个文字是结构还是层数。这时候需要用到【正则表达式】,通过提取汉字,或是提取数字,来解决这个问题。

还有一种类似的情况也可以用这个方法解决。

如下:一个地块里有多个设施点,同样用【连接】规则:

图片

最好设一个连接分隔符。这里用了【;】


六、示例_为公交站点连接其所在的公交线路

如果是完美的数据,公交站点应该完全位于公交线路上,但是有时候你拿到的数据可能是这样的:

图片

公交站点和公交线路存在一定的距离,看图没什么问题,但是用来分析就会发现二者并没有空间上的关系。

这时候可以通过搜索半径的设置将二者关联上。

工具设置如下:

图片

注意搜索半径要根据实际情况设置,不宜过大造成结果不准确,也不宜过小造成连接不上。

生成结果如下:

图片

可以看到线路名已经被连接到站点要素上了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/470601.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Json-序列化字符串时间格式问题

序列化字符串时间格式问题 一、项目场景二、问题描述三、解决方案 一、项目场景 最近C#中需要将实体进行json序列化,使用了Newtonsoft.Json public static void TestJson(){DataTable dt new DataTable();dt.Columns.Add("Age", Type.GetType("Sys…

ESP32学习(1)——环境搭建

使用的ESP32板子如下图所示 它可以用Arduino 软件,基于C语言开发。但是,在这里,我是用Thonny软件,基于micro_python对其进行开发。 1.安装Thonny Thonny的软件安装包,可以去它官网上下载。Thonny, Python IDE for begi…

【论文精读】EfficientNet

摘要 以往的卷积网络模型通过缩放深度,宽度和图像大小的其中之一或之二来扩大网络以实现更好的结果,但这种思想下经常产生次优的精度和效率的算法。 本文认为通过同时平衡网络宽度、深度、分辨率的缩放倍数来扩大卷积网络,可以达到更好的精度…

尚硅谷最新Node.js 学习笔记(四)

目录 八、express框架 8.1、express介绍 8.2、express使用 express下载 express初体验 8.3、express路由 什么是路由? 路由的使用 获取请求参数 获取路由参数 8.4、express响应设置 8.5、express中间件 什么是中间件? 中间件的作用 中间件…

VScode中配置 C/C++ 环境 | IT拯救者

文章目录 0 引言1. 下载编辑器VScode2. 下载编译器MinGW并解压3. 将MinGW添加至环境变量4. 配置VScode插件5. 运行代码6. 调整和优化7. 提示8. 例行格式条款9. 例行格式条款 0 引言 由于VScode毛毛张使用不习惯,因此配置教程记不住,不过毛毛张看到一篇不…

【数据结构】LRU Cache

文章目录 LRUCache LRUCache 1. LRUCache是一种缓存的替换技术,在CPU和main memory之间根据计算机的局部性原理,往往会采用SRAM技术来构建CPU和主存之间的高速缓存,DRAM(dynamic random access memory)用于构建主存,LRUCache这种…

论文阅读-PIM-tree:一种面向内存处理的抗偏移索引

论文名称:PIM-tree: A Skew-resistant Index for Processing-in-Memory 摘要 当今的内存索引性能受到内存延迟/带宽瓶颈的限制。Processing-in-memory (PIM) 是一种新兴的方法,可能通过实现低延迟内存访问,其聚合内存带宽随 PIM 节点数量扩…

文案馆头像壁纸微信小程序源码【支持流量主】

文案馆头像壁纸微信小程序源码【支持流量主】 源码介绍:文案馆头像壁纸微信小程序源码是一款可以获取套图、头像、壁纸的小程序。小程序源码内置流量主功能 需求环境:微信小程序phpmysql 下载地址: https://www.changyouzuhao.cn/13453.ht…

新机Word/PowerPoint新建空白文档后闪退问题

首先可以尝试一下常规的修复: 设置-应用-安装的应用-搜索office-点击Micros Office Home and Student...右侧三个点-选择修改-点击是-快速修复-修复 再不行就按上面的选择联机修复,这个会卸载现有Office然后自动帮你重新下载 我做了以上两个都没有解决问…

项目访问量激增该如何应对

✨✨ 欢迎大家来到喔的嘛呀的博客✨✨ 🎈🎈希望这篇博客对大家能有帮助🎈🎈 目录 引言 一. 优化数据库 1.1 索引优化 1.2 查询优化 1.3 数据库设计优化 1.4 事务优化 1.5 硬件优化 1.6 数据库配置优化 二. 增加服务器资源…

2024 前端面试题(GPT回答 + 示例代码 + 解释)No.21 - No.40

本文题目来源于全网收集,答案来源于 ChatGPT 和 博主(的小部分……) 格式:题目 h3 回答 text 参考大佬博客补充 text 示例代码 code 解释 quote 补充 quote 上一篇链接:2024 前端面试题(GPT回答 示例…

html的表格标签

html的表格标签 table标签:表示整个表格tr:表示表格的一行td:表示一个单元格th:表示表头单元格.会居中加粗thead:表格的头部区域 (注意和th区分,范围是比th要大的).tbody:表格得到主体区域. table包含tr , tr包含td或者th. 表格标签有一些属性,可以用于设置大小边…