ArcGIS中各种合并要素(Union、Merge、Append、Dissolve)的异同点分析 转载
标签: arcgis 杂谈 分类: GIS
ArcGIS中将两个要素类合并成一个要素有Union、Dissolve、Append、Merge等,在Arctoolbox中均有相应工具,但功能上有所不同:
Union:合并输入要素类到新的要素类中。
图形:union只能合并polygon类型的要素类。两个要素类合并时会处理相交部分,使之单独形成多部件要素,并且有选项选择允许缝隙(gaps)或不允许缝隙。如果过选择不允许缝隙,两个要素类合并后的缝隙将生成要素。
属性表:union合并属性表的选项有三个:all、no_fid和only_fid。all将两个要素类的属性表字段按顺序全部放在输出要素类的属性表 中,包括fid。同名的字段(除fid外)在字段名后加数字以示区别(fid后加要素类名称)。no_fid将两个要素类的属性表中除fid外的字段按顺 序全部放在输出要素类的属性表中。only_fid只将两个要素类的属性表中的fid放到输出要素类的属性表中,在fid后加要素类名称以示区别。 union不做字段映射。
Merge:合并输入要素类、表到新的要素类、表中。
可以联合一般的属性表,合并属性或者说挂接属性!
例如:县polygon,只有name属性,现在需要添加他的邮编、区号、人口、面积、代码等等信息,现在搜集到了这些信息,并且放到一般的属性数据库如 access里面。属性表和图形属性存有共同的name属性字段,可以joins一起,然后用 Merge工具,选择需要的属性字段,生成独立的新要素!
图形:merge可以合并点、线、多边形等要素类和表,但必须是相同类型的。merge不处理要素,只简单地把要素放到一个要素类里,因此输出的要素类可能会有重叠或缝隙。
属性表:merge处理属性表时会把相同名字的字段合成一个,不同名字的字段按原名字、顺序全部加入输出要素类属性表中,原fid将会丢弃。merge可以进行字段映射。
Append:合并输入要素类、表、栅格影像及栅格目录到一个已有的要素类、表、栅格影像及栅格目录中。
如果源数据的字段属性相同,则可以用append 合并多个shapefile文件为一个。
如不同级别的河流shapefile文件,可以合并在一个shapefile中,显示专题还可以分开描述。
当schema type选项为test时,输入输出的要素类属性表结构必须一致,既字段名、类型、排列顺序必须完全相同,当schema type选项为no_test时可以不同。
图形:append可以合并点、线、多边形等要素类和表、栅格影像及栅格目录,但必须是相同类型的。append不处理要素,只简单地把要素放到一个要素类里,因此输出的要素类可能会有重叠或缝隙。
属性表:同输出要素类的属性表。输入要素类属性表中的字段如果在输出要素类属性表中没有将会被丢弃,但可做字段映射,将输入要素类的某个字段映射到输出要素类的某个字段。
Dissolve:可以把多个要素,通过指定的属性(属性值相同),溶解成一个要素;
例如:可以把县 溶解成市。 条件:县要素里面有共同的 市 标志~!
dissolve/////丢失没有指定的不同的属性
异同点:merge、union、append均为合并,开始,过程,结果,有什么不同?
merge和union一般来说是对要素类中的“要素”来说的,也就是说,对某一部分要素进行操作。
merge 是对同一个要素类中的要素的操作,操作完成后原来的要素消失。
union 则灵活一些,可以对不同图层的要素进行操作,新生要素在目标图层中产生
append 一般拿来用于将多个要素类合并。比如将两个省的数据合并到一个要素类中。
ArcGIS中各种合并要素(Union、Merge、Append、Dissolve)的异同点分析 转载的更多相关文章
- ArcGIS Desktop和Engine中对点要素图层Graduated Symbols渲染的实现 Rotation Symbol (转)
摘要 ArcGIS中,对于要素图层的渲染,支持按照要素字段的值渲染要素的大小,其中Graduated Symbols可以对大小进行分级渲染.在个人开发系统的过程中,也可以用来美化数据显 ...
- ArcGIS中如何导出单个矢量要素图形
原文:ArcGIS中如何导出单个矢量要素图形 在ARCGIS中载入了一张含有省界的中国地图,是SHP文件.现在我只想要其中一块地区的,实现方法如下: 加入到ArcGIS后,右击图层,打开属性表(att ...
- C#+ArcGIS Engine 获取地图中选中的要素
转自 C#+ArcGIS Engine 获取地图中选中的要素 C#+ArcGIS Engine 获取地图中选中的要素 提供一种简单遍历获取地图中选中要素的方法,代码如下: List<IFeatu ...
- ArcGIS 中要素的查询与修改
转自nimeila的回答 求C# ArcGIS Engine修改选中要素的属性,单要素都行 RLAlterFrm RLalter = new RLAlterFrm(); RLalter.ShowDia ...
- arcgis中的Join(合并连接)和Relate(关联连接)
arcgis中的Join(合并连接)和Relate(关联连接) 一.区别 1.连接关系不一样. Relate(关联连接)方式连接的两个表之间的记录可以是“一对一”.“多对一”.“一对多”的关系 Joi ...
- arcgis中栅格矢量计算技巧收藏
编辑 一.计算面积 ( 可以帮我们计算小班面积 )添加 AREA 字段,然后右键点击字段列,然后点击 CALCULATE VALUES; ---> 选择 ADVANCED -->把下 ...
- ARCGIS中怎么去除重复的面?(转)
ARCGIS中怎么去除重复的面? https://blog.csdn.net/gswwldp/article/details/66974522 第一种: 1.用polygon to line将面转 ...
- Java中的合并与重组(下)
通过优锐课核心java学习笔记中,我们可以看到,码了很多专业的相关知识, 分享给大家参考学习. Java中的合并与重组上部分链接:https://www.cnblogs.com/youruike1/p ...
- ArcGIS中的坐标系统定义与投影转换【转】
ArcGIS中的坐标系统定义与投影转换 坐标系统是GIS数据重要的数学基础,用于表示地理要素.图像和观测结果的参照系统,坐标系统的定义能够保证地理数据在软件中正确的显示其位置.方向和距离,缺少坐标系统 ...
随机推荐
- 如何创建管理员权限的CMD命令提示符窗口
最近在使用netstat -anob命令时提示 请求的操作需要提升. 总结了几种创建管理员权限的CMD命令行的方法. 创建临时管理员权限的CMD Win8系统: 按下windows徽标,直接输入cmd ...
- 对象存储在什么地方(java编程思想)
用引用操作对象.创建了一个引用,需要进行初始化(与事物进行关联),才能正常使用.new将引用于对象进行关联 对象存储到什么地方? 程序运行时,对象是怎么进行放置安排的呢?特别是内存是怎么分配的呢?对这 ...
- java 生成xml文件
这里也使用的是import org.w3c.dom.Document; 首先创建document对象,给该对象赋值,然后将document对象使用transformer的transformer转换方法 ...
- javascript: 数据类型深入理解
1.基本类型(值类型或者原始类型): Number.Boolean.String.NULL.Undefined以及ES6的Symbol2.引用类型:Object.Array.Function.Date ...
- c#:Json字符串转成xml对象
没看到.net framework中有这样的功能, 懒得到处找了, 索性花点时间自己写一个 /* * Created by SharpDevelop. * Date: 2013/6/24 * User ...
- Spring Boot 报错:Error creating bean with name 'entityManagerFactory' defined in class path resource
spring boot 写一个web项目,在使用spring-data-jpa的时候,启动报如下错误: Error starting ApplicationContext. To display th ...
- UOJ 348 【WC2018】州区划分——子集卷积
题目:http://uoj.ac/problem/348 参考:https://www.cnblogs.com/NaVi-Awson/p/9242645.html#%E5%AD%90%E9%9B%86 ...
- 去掉桌面SVN
1新建记事本 2for /r . %%a in (.) do @if exist "%%a\.svn" rd /s /q "%%a\.svn" 3重命名 删除S ...
- AngularJS资源大集锦
AngularJS最近貌似很火,前段时间,CSDN的编辑专访了AngularJS创始人Misko Hevery.这不,Tuts+网站编辑Rey Bango应广大读者需要,把各种极好的AngularJS ...
- Java 获取字符串长度 length()
Java 手册 实例: public class Length { public static void main(String[] args) { String str = "hgdfas ...