【超级干货】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……】的情况,不能保证第一个文字是结构还是层数。这时候需要用到【正则表达式】,通过提取汉字,或是提取数字,来解决这个问题。

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

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

图片

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


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

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

图片

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

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

工具设置如下:

图片

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

生成结果如下:

图片

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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

网站被劫持了怎么解决

网站被劫持是一种常见的网络安全问题,它通常表现为用户访问网站时被自动跳转到其他页面,这不仅影响用户体验,还可能对网站带来负面影响。面对这种情况,如何运用高技术手段来有效应对和防范网站劫持,成为了一个迫切需要…

【Linux学习】线程池

目录 23.线程池 23.1 什么是线程池 23.2 为什么需要线程池 23.3 线程池的应用场景 23.4 实现一个简单的线程池 23.4.1 RAII风格信号锁 23.4.2 线程的封装 23.4.3 日志打印 22.4.4 定义队列中存放Task类任务 23.4.5 线程池的实现(懒汉模式) 为什么线程池中需要有互斥锁和条件变…

MySQL学习记录——구 复合查询

文章目录 1、基本查询2、多表查询3、自连接4、子查询1、多行子查询2、多列子查询3、from句中的子查询 5、合并查询 1、基本查询 看一些例子,不关心具体内容,只看写法 //查询工资高于500或岗位为MANAGER的雇员, 同时还要满足他们的姓名首字母为大写的J …

Java图形化界面编程——AWT概论 笔记

2.3 Container容器 2.3.1 Container继承体系 Winow是可以独立存在的顶级窗口,默认使用BorderLayout管理其内部组件布局;Panel可以容纳其他组件,但不能独立存在,它必须内嵌其他容器中使用,默认使用FlowLayout管理其内部组件布局;S…

DOM事件练习1

DOM事件练习1 1. 演示效果 2. 分析思路 用 ul 创建四个 li 列表整个列表的背景是红色的,鼠标悬浮在列表上,一行的变为蓝色点击任意列表,整个列表的背景变为白色,被点击的列表变为粉色需要用到 js 的点击事onclick件和forEach循环…

【并发编程】ThreadPoolExecutor类

📝个人主页:五敷有你 🔥系列专栏:并发编程⛺️稳重求进,晒太阳 ThreadPoolExecutor 1) 线程池状态 ThreadPoolExecutor 使用 int 的高 3 位来表示线程池状态,低 29 位表示线程数量 状态名 高三位 …

网络安全威胁,如何解决缓冲区溢出攻击

目录 一、什么是网络安全 二、什么是缓冲区 三、缓冲区溢出 四、缓冲区溢出攻击的类型 一、什么是网络安全 网络安全(Network Security)指的是保护计算机网络及其相关设备、系统和数据免受未经授权访问、破坏、篡改、窃取或滥用的威胁和攻击。随着网…

【C语言必刷题】1.打印1~100之间的奇数

📚博客主页:爱敲代码的小杨. ✨专栏:《Java SE语法》 | 《数据结构与算法》 | 《C生万物》 ❤️感谢大家点赞👍🏻收藏⭐评论✍🏻,您的三连就是我持续更新的动力❤️ 🙏小杨水平有…

[职场] 应聘销售的简历怎么写 #职场发展#笔记

应聘销售的简历怎么写 应聘销售的简历怎么写1 基本信息 姓名:吴x 性别:女 毕业院校:徐州师范大学计算机科学院 学历:大专 联系电话:电子邮件: 工作经验:4年 求职意向 期望从事职业:销…

前端秘法基础式(HTML)(第二卷)

目录 一.表单标签 1.表单域 2.表单控件 2.1input标签 2.2label/select/textarea标签 2.3无语义标签 三.特殊字符 一.表单标签 用来完成与用户的交互,例如登录系统 1.表单域 <form>通过action属性,将用户填写的数据转交给服务器 2.表单控件 2.1input标签 type…

(03)Hive的相关概念——分区表、分桶表

目录 一、Hive分区表 1.1 分区表的概念 1.2 分区表的创建 1.3 分区表数据加载及查询 1.3.1 静态分区 1.3.2 动态分区 1.4 分区表的本质及使用 1.5 分区表的注意事项 1.6 多重分区表 二、Hive分桶表 2.1 分桶表的概念 2.2 分桶表的创建 2.3 分桶表的数据加载 2.4 …

UART通信中的奇偶校验

UART通信中的奇偶校验&#xff1a;提升数据传输可靠性的简单方法 在微控制器&#xff08;MCU&#xff09;和各种电子设备之间的数据通信领域&#xff0c;UART&#xff08;Universal Asynchronous Receiver/Transmitter&#xff0c;通用异步收发传输器&#xff09;协议是一种广泛…

23款奔驰S400商务版没有后排电动座椅那改装一套跟选装有区别吗

改装的后排电动座椅通常提供以下功能&#xff1a; 电动调节&#xff1a;座椅可以通过按钮或控制面板进行前后调节&#xff0c;以适应乘客的腿部空间需求。 靠背角度调节&#xff1a;乘客可以通过电动调节功能来调整座椅的靠背角度&#xff0c;以获得更舒适的坐姿。 座椅倾斜调…

投资银行在网络安全生态中的作用

文章目录 一、投资银行的含义(一)并购买方。(二)并购卖方。(三)IPO辅助。(四)投资银行业务的另一方面是帮助这些交易融资。二、从投资银行角度看网络安全产业(一)行业的短期前景三、复杂的网络安全并购(一)行业知识对投资银行业务很重要(二)在网络安全领域,技术…

嵌入式C语言学习——基于Linux与GCC(二)

系列文章目录 一.C语言常用关键字及运算符操作 文章目录 系列文章目录内存四区指针指针概述指针 修饰符constvoliatiletypedef 指针运算符多级指针 数组数组空间字符空间及地址 结构体、共用体定义、字节对齐位域 内存分布图段错误分析 内存四区 C/C语言的内存四区&#xff…

MySQL 基础知识(六)之数据查询(一)

目录 1 基本查询 1.1 查询相关列 (select * / 列名) 1.2 别名 (as) 1.3 去重 (distinct) 1.4 对列中的数据进行运算 (、-、*、/) 2 条件查询 (where) 2.1 等值查询 () 2.2 非等值查询 (>、<、>、<、!、><) 2.3 逻辑判断 (and、or、not) 2.4 区间判…

Shell 学习笔记(一)-Shell脚本编程简介

一 什么是shell&#xff1f; shell是一个用 C 语言编写的程序&#xff0c;它是用户使用 Linux 的桥梁。Shell 既是一种命令语言&#xff0c;又是一种程序设计语言。 Shell 是指一种应用程序&#xff0c;这个应用程序提供了一个界面&#xff0c;用户通过这个界面访问操作系统内…

rocketMQ下载、安装及配置

topic主题 - 里边存在多个队列&#xff08;队列是真实存在的&#xff09; rocketMQ安装及配置 一、官网下载 windows和linux系统版本都一样。Binary 下载 下载 | RocketMQ (apache.org) 二、修改运行内存及broker.conf、配置环境变量 1、修改根目录->bin目录下runserve…

ubuntu22.04@laptop OpenCV Get Started: 010_blob_detection

ubuntu22.04laptop OpenCV Get Started: 010_blob_detection 1. 源由2. blob应用Demo2.1 C应用Demo2.2 Python应用Demo 3. 重点分析3.1 Threshold3.2 Area3.3 Circularity3.4 Convexity3.5 Inertia Ratio 4. 总结5. 参考资料6. 补充 1. 源由 Blob是图像中的一组连接像素&#…

猫头虎分享已解决Bug || 代码部署失败(Code Deployment Failure):DeploymentError, FailedRelease

博主猫头虎的技术世界 &#x1f31f; 欢迎来到猫头虎的博客 — 探索技术的无限可能&#xff01; 专栏链接&#xff1a; &#x1f517; 精选专栏&#xff1a; 《面试题大全》 — 面试准备的宝典&#xff01;《IDEA开发秘籍》 — 提升你的IDEA技能&#xff01;《100天精通鸿蒙》 …