Spatial Join 应用操作及实例
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Spatial Join介绍
Spatial Join是ArcGis的叠置分析工具之一,它在ArcGis的工具箱(ArcToolBox)如下
图
是一个强大的叠置分析工具,可进行多种操作,用它进行分析时可以同时对图层要素与属性表进行操作,对图层要素的操作主要为寻找满足条件的要素并添加到一个新图层,对属性要
素的操作主要为增加有需要的字段并写入相应数据。 Spatial Join的对话框如下图所示
Target Feature
Target Feature中的对象要素为结果中得到的要素,即Target Feature中若为点要素,则
得到的为从此文件中筛选的点要素。
Join Feature
Join Features相当于参照物,比如,筛选出点与线距离在50m范围之内的点。筛选对象为点要素,故点层为Target Feature,筛选所用的参照物为线要素,故线层为Join Feature。
Output Feature
Output Feature 为要输出的图层,系统会自动新建,此图层中的点为在Target Feature 中满足条件的点(若操作时选择Keep All Target Features,则会保留Target Features 所有的要素;若操作时不勾选这一项,则只显示所需要的要素。)
Field Map of Join Feature
会显示出两个层内所有的字段,根据需要修改相关字段,修改后的字段将体现在生成的新图层数据的属性表上。可以鼠标右击选择Rename自定义字段名,方便记忆。
Match Option(optional):
共有四种操作,本别为intersects;contains;is_within;closest。
①Intersects:join feature(intersects)target feature。任何形状的要素都能进
行这种操作。
②contains:target feature (contains)join feature
这里要注意的是,target feature不能为点要素,因为点要素不能包含其它要素;若join feature为面要素,则target feature也只能是面要素。
③is_within
target feature(is_within)join feature。
若target feature 为面,则join feature也只能为面;join feature不能为点。
④closest:两个要素间距离不超过一定范围(范围由用户自己定,写在下一行)
在理论上,始终记住上面的条件限制似乎麻烦。但是用户不必担心,当我们选择的要素不能进行某些操作时,系统会自动屏蔽,不在下拉列表框中出现。所以细心的用户会发现,经常会出现下拉列表框只有3个操作可供选择。 Keep All Target Feature 默认为选中状态,若不去掉复选框的“√”,原本的要素会依旧一个不落得显示在新图层里。但是属性
数据可能会有些变化。
Join Operation:
有两个选项,join one to one和join one to many。
前者是一对一的关系,后者是一对多的关系。
即如果Target Feature与Join Feature是一对多的关系,如果选择前者,结果的属性表中Target Feature仅选择Join Feature中满足条件的一条属性进行联合;反之,将选择所有满足条件的属性进行联合,这样的结果是,新图层上一个要素可能对应的有几条属性行。
Distance Field Name
它只在“Match Option”选择“Closest”时才可用。用户可填写新增的字段名称,该字段默认为Double类型,将记录目标与最近的Join Feature的距离。“-1”代表这个点不符合要求(即这个点到Join Features的距离大于用户的定义值)
应用实例1
现在,有两份shp文件。一份是点文件,我给它命名为:景点;另一份是面文件,命名为:行政区划。两份文件中相对应的表字段如下:
其中,Name各为景点名称和区县名称,Adress为景点地址,Density为行政区划人口密度。问题:假设有5000条景点的属性数据和100条行政区划的属性数据,请根据行政区划的名称,对景点进行分类,使处在不同行政区划上的点以不同的颜色表示。(若给点提示,则可以这么问:要求给景点数据增加一个字段,用来表示景点所在的行政区,并且根据这个增加的字段给属于不同行政区划的景点设置不同的颜色。)
方法:
要先给景点数据增加一个字段,用来表示景点所在的行政区。
故我们在进行Spatial Join时,Target Feature 选择景点层,Join Feature选择行政区划层,Match Operation选择intersects或者is_within,最后第二行默认0,Field Map of Join Feature中一定要留着区县的名称,区县其他字段可删。
单击OK,便出现一个新的图层,乍看之下没什么变化。但是打开新的点层的属性表,就会
发现最后一列多了行政区划的名称字段。
接下来就很简单了,在新的点层上右键依次选择Properties→Symbology,再根据这个增加的字段给属于不同行政区划的景点设置不同的颜色。
应用实例2
①题目:找出距离公交线路0.0005以内的点,使其显示在新图层中,并新建两个字段分别
显示该点到最近的公交线路的距离与该公交线路的名称。
②步骤及相关解释
打开Spatial Join对话框,根据下图操作:
解释:Target Feature中的对象要素即为结果中得到的要素,即Target Feature中若为点