属性域分为两类,一种是范围域,一种是编码的值,下面将两个一起介绍,其中涉及到的编码,名称,只是试验,并非真实情况。

一、首先新建一个文件型地理数据库,将数据导入或者是新建要素类都可以

二、打开ArcToolBox,找到工具集Domains,位置如下:ArcToolbox--Data Management Tools--Domains

新建属性域,使用工具 Create Domain

工具介绍:http://desktop.arcgis.com/zh-cn/arcmap/latest/tools/data-management-toolbox/create-domain.htm

在新建的gdb上右键,属性,打开到Domains选项卡,结果如下

向属性域添加编码值,使用工具Add Coded Value To Domain

工具介绍:http://desktop.arcgis.com/zh-cn/arcmap/latest/tools/data-management-toolbox/add-coded-value-to-domain.htm

同样在新建的gdb上右键,属性,打开到Domains选项卡,结果如下

在此窗口上直接编码添加编码值适合于少量数据,gp工具适用于python脚本使用,效果相同

新建一个范围域,使用工具 Create Domain,其中字段类型为SHORT,Domain Type才能为Range

接下来给范围域添加数值,使用工具Set Value For Range Domain,

工具介绍:http://desktop.arcgis.com/zh-cn/arcmap/latest/tools/data-management-toolbox/set-value-for-range-domain.htm

所有属性域设置完毕,效果如下

然后为需要的字段指定属性域,需要注意的是,字段类型要与属性域设置的相同才可以用,使用工具Assign Domain To Field

工具介绍:http://desktop.arcgis.com/zh-cn/arcmap/latest/tools/data-management-toolbox/assign-domain-to-field.htm

其中【dlmc】对应的是【地类名称分类】,【dlbm】对应的是【范围值】

同样,在要素类上右键--属性,也可以执行此操作,效果如下

接下来就可以开始编辑,见证属性域的作用啦

有时候在创建编码的时候,并不是按照顺序创建的,出于工作便利考虑,需要对编码值进行排序,可使用Sort Coded Value Domain工具,

工具介绍:http://desktop.arcgis.com/zh-cn/arcmap/latest/tools/data-management-toolbox/sort-coded-value-domain.htm

因小编在建立的时候是按照从小到大的顺序排的,为了看出效果,我们使用DESCENDING方式

效果如下

还可将设置的属性域导出成表的形式,使用工具Domain To Table

工具介绍:http://desktop.arcgis.com/zh-cn/arcmap/latest/tools/data-management-toolbox/domain-to-table.htm

同理,也可以将表转为属性域,可以减少重复新建属性域的工作,提高效率,使用工具:Table To Domain

工具介绍:http://desktop.arcgis.com/zh-cn/arcmap/latest/tools/data-management-toolbox/table-to-domain.htm

如果需要删除属性域中已不需要的编码值,可以使用工具Delete Coded Value From Domain

工具介绍:http://desktop.arcgis.com/zh-cn/arcmap/latest/tools/data-management-toolbox/delete-coded-value-from-domain.htm

选择要删除的编码值即可

如果该gdb不想使用属性域了,也可以删除属性域

首先,需要将与字段【关联】的属性域移除,使用工具Remove Domain From Field

工具介绍:http://desktop.arcgis.com/zh-cn/arcmap/latest/tools/data-management-toolbox/remove-domain-from-field.htm

将所有与字段关联的属性域移除之后,就可以彻底删除属性域了

32 ArcToolBox学习系列之数据管理工具箱——属性域(Domains)的两种创建及使用方式的更多相关文章

  1. 33 ArcToolBox学习系列之数据管理工具箱——投影与变换(Projections and Transformations)未完待续……

    工具箱位置 打开ArcToolBox,找到工具集Projections and Transformations,位置如下:ArcToolbox--Data Management Tools--Proj ...

  2. Docker学习系列(三)Docker搭建gitlab的两种方式

    一.直接下载docker-ce 1.拉取gitlab/gitlab-ce Randy:~ Randy$ docker pull gitlab/gitlab-ce Using default tag: ...

  3. 【Spring源码深度解析学习系列】复杂标签属性解析(四)

    一.创建用于属性承载的BeanDefinition BeanDefiniton是一个接口,在Spring中存在三种实现:RootBeanDefinition.ChildBeanDefinition.G ...

  4. Cocos2d-x学习笔记(五岁以下儿童) 精灵两种方式播放动画

     这几天在看控件类,临时没有想好实际运用的方向.单纯的创建网上已经有非常多这方面的样例,我就不写了.接下来是学习精灵类.精灵类若是单独学习也是非常easy.于是我加了一些有关动画方面的知识点与精灵 ...

  5. C#学习-图解教程(2):访问修饰符(其中两种)

    学习内容:C#:学习书籍:图解教程(中文第四版). 目录:第四章 类的基本概念 -----> 4.8 访问修饰符 访问修饰符 从类的内部,任何函数成员都可以使用成员的名称访问类中任意的其他成员. ...

  6. Selenium系列(十一) - 针对两种上传文件方式的实现方案

    如果你还想从头学起Selenium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1680176.html 其次,如果你不懂前端基础知识, ...

  7. pandas.DataFrame学习系列1——定义及属性

    定义: DataFrame是二维的.大小可变的.成分混合的.具有标签化坐标轴(行和列)的表数据结构.基于行和列标签进行计算.可以被看作是为序列对象(Series)提供的类似字典的一个容器,是panda ...

  8. Caffe学习系列(9):运行caffe自带的两个简单例子

    为了程序的简洁,在caffe中是不带练习数据的,因此需要自己去下载.但在caffe根目录下的data文件夹里,作者已经为我们编写好了下载数据的脚本文件,我们只需要联网,运行这些脚本文件就行了. 注意: ...

  9. 转 Caffe学习系列(9):运行caffe自带的两个简单例子

    为了程序的简洁,在caffe中是不带练习数据的,因此需要自己去下载.但在caffe根目录下的data文件夹里,作者已经为我们编写好了下载数据的脚本文件,我们只需要联网,运行这些脚本文件就行了. 注意: ...

随机推荐

  1. A previous installation of Qt5 Visual Studio Add-in was detected. Please uninstall it before running this installer解决办法

    前段时间在安装Qt Visual Studio插件的时候,安装到一半不小心中止了,结果后来怎么安装都不行,提示已经安装了,要先卸载, 可是到哪里都找不到有卸载的,因为压根就没有安装完成.这可害苦我了. ...

  2. day16——函数式编程和内置函数

    编程的方法论 面向过程:找到问题的 函数式:不可变.不用变量保存状态.不修改变量 面向对象: 高阶函数: 满足俩个特性任意一个即为高阶函数 1.函数的传入参数是一个函数名 2.函数的返回值是一个函数名 ...

  3. LVS节点健康检查及管理脚本

    在LVS负载均衡主节点上,模拟keepalived健康检查功能管理LVS节点,当节点挂掉从服务器池中剔除,好了再加到服务器池中来. 工具:yum install -y ipvsadm web03:10 ...

  4. PHP提取页面第一张图为缩略图的代码

    <?php $p = '/<img.*?src=[\'|\"](.+?)[\'|\"].*?>/i'; preg_match_all($p,$str,$match ...

  5. java - day007 - 继承(2), 多态,面向对象,抽象类

    继承 新建子类对象是,先新建父类对象,并执行父类的构造方法, 默认执行父类的无参构造放方法 可以 手动调用父类的有参构造 super(参数 ) super super.xxx() 调用父类成员 一般重 ...

  6. 快捷键打开Generate

    在eclipse下有覆盖toString.hashcode.setter.getter等功能. 在intelj idea中,同样具有类似的功能. 按下键盘上的alt+insert键,就会弹出gener ...

  7. 原生JS插件(超详细)

    作为一个前端er,如果不会写一个小插件,都不好意思说自己是混前端界的.写还不能依赖jquery之类的工具库,否则装得不够高端.那么,如何才能装起来让自己看起来逼格更高呢?当然是利用js纯原生的写法啦. ...

  8. js将某个值转换为String字符串类型或转换为Number数字类型

    将某个值转换为String类型 1. value.toString() toString()方法返回一个表示该对象的字符串 var a = 123 a.toString() // '123' 2. & ...

  9. 【webpack系列】从零搭建 webpack4+react 脚手架(五)

    本章节,我们一起来探讨以下问题:如何对编译后的文件进行gzip压缩,如何让开发环境的控制台输出更加高逼格,如何更好的对编译后的文件进行bundle分析等. 1 gzip压缩 如果你想节省带宽提高网站速 ...

  10. Github 上怎样把新 commits 使用在自己的 fork 上

    作者:黄晓佳 链接:https://www.zhihu.com/question/20393785/answer/105370502 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业转 ...