ArcGIS空间连接(二):如何将要素的属性连接给与其相交的要素

实践数据:房屋面状要素、房屋结构注记点点状要素

实践目的:将房屋结构注记点的房屋结构属性连接给与其相交的房屋要素(此案例针对一个要素相交两个或多个要素,一个要素与一个要素相交的情况请关注上一篇)

ArcGIS空间连接(二):如何将要素的属性连接给与其相交的要素_第1张图片

 ArcGIS空间连接(二):如何将要素的属性连接给与其相交的要素_第2张图片

1.打开分析工具——》叠加分析——》空间连接工具。

 ArcGIS空间连接(二):如何将要素的属性连接给与其相交的要素_第3张图片

2.目标要素选房屋,连接要素选房屋结构注记点,连接操作选择JOIN_ONE_TO_ONE(一对一),其他默认设置,输出房屋1,完成第一次连接。

ArcGIS空间连接(二):如何将要素的属性连接给与其相交的要素_第4张图片

3.再次打开空间连接工具,对已经进行一对一空间连接的结果数据房屋1再次连接。目标要素选房屋1,连接要素选房屋结构注记点,连接操作选择JOIN_ONE_TO_MANY(一对多),其他默认设置,输出房屋2,完成第二次连接。

ArcGIS空间连接(二):如何将要素的属性连接给与其相交的要素_第5张图片

4.打开房屋2属性表,其中有两个字段为房屋结构和房屋结构_1,分别是两次空间连接产生的。并且房屋数量在第二次一对多空间连接后从5个变成了9个,是因为存在一个房屋相交多个房屋结构注记点的情况。Join_Count字段为第一次空间连接产生的,其中数值代表该要素连接房屋结构注记点的数量。在房屋2属性表中添加字段命名为备注,用于存放房屋真实结构。

ArcGIS空间连接(二):如何将要素的属性连接给与其相交的要素_第6张图片

5.使用字段计算器计算备注,解析程序选择Python,勾选显示代码块,编写逻辑代码:

def getValue(a,b,c):
    if(c==1):
        return a
    elif(c==0):
        return "空"
    elif(a==b):
        return "删除重复"
    else:
        return a+b

如下图所示:

ArcGIS空间连接(二):如何将要素的属性连接给与其相交的要素_第7张图片

最终获得以下效果:

 ArcGIS空间连接(二):如何将要素的属性连接给与其相交的要素_第8张图片

 6.双击备注字段排序,选中备注字段值为删除重复的要素并将其删除,剩余的5个要素则为完成一对多属性连接的房屋。

 ArcGIS空间连接(二):如何将要素的属性连接给与其相交的要素_第9张图片

ArcGIS空间连接(二):如何将要素的属性连接给与其相交的要素_第10张图片

注:以上内容如若有误欢迎评论指正,谢谢!

你可能感兴趣的:(ArcGIS空间连接,ArcGIS字段计算器,arcgis,python)