(十九)数据编辑——属性编辑②

数据编辑——属性编辑②

使用键盘输入值并不是编辑表中值的唯一方式。在某些情况下,为了设置字段值,可能要对单条记录甚至是所有记录执行数学计算。ArcMap 中的字段计算器可以对所有或所选记录进行简单和高级计算。

此外,还可以基于字段计算属性表中的面积、长度、周长和其他几何属性。

目录

    • 数据编辑——属性编辑②
  • 1.对要素几何执行计算
    • 1.1计算几何
    • 1.2操作步骤
    • 1.3问题解决
  • 2.“字段计算器”可能被禁用的原因
  • 3.使用“字段计算器”进行高级计算

1.对要素几何执行计算

1.1计算几何

计算几何”工具可以访问图层的要素几何。根据输入图层的几何,此工具可以计算坐标值、长度和面积。仅当对所使用的坐标系进行了投影时,才能计算要素的面积、长度或周长。请牢记,不同投影具有不同的空间属性和变形。如果数据源和数据框的坐标系不同,那么使用数据框坐标系所计算的几何结果就可能与使用数据源坐标系所计算的几何结果不同。建议在计算面积时使用等积投影。

仅当要素含有 z 值时,才能计算 z 坐标值或 3D 测量值。无论选择何种坐标系,都可以计算 Z 坐标值和 3D 测量值。只要为图层定义了垂直坐标系,列出的 z 和 3D 计算结果的单位就为平面单位(如英里、米等)。如果没有为数据定义垂直坐标系,则单位将被列为未知。

下表显示了不同类型要素的可计算几何属性:
在这里插入图片描述
注意:仅当要素含有 z 值时,才能计算 z 坐标值和 3D 测量值。

ArcGIS 中的几何计算是平面的 - 也就是说,在投影空间中计算而不是在球空间或测地线空间中计算。仅当所使用的坐标系为投影坐标系时,才能计算要素的面积、长度或周长。如果数据源使用了一个地理坐标系,如 WGS 1984 并且未投影,则可以使用数据框的投影坐标系来执行计算。或者,也可以投影数据源。

“计算几何”可处理任意数字或文本字段。为了得到最精确的结果,可使用双精度字段类型(小数位数根据需要自行定义)。如果使用整型字段,则结果会四舍五入为一个整数。如果使用文本字段,则可以执行一些自定义操作(如包含单位缩写、选择格式等),以便为标注轻松地创建随时可用的字段。

1.2操作步骤

①启动编辑会话。 即使您未处于编辑会话中,也可以进行计算,但在这种情况下无法撤消计算结果;

②右键单击图层,然后单击打开属性表;

③右键单击要计算的字段标题,然后单击计算几何,或者,也可以按 CTRL+SHIFT+G 打开计算几何 对话框。

④单击要计算的几何属性。

⑤单击“使用数据源的坐标系”或“使用数据框的坐标系”,单击输出计算结果的单位,如果已在表中选择记录,也可以选择将计算应用于所有记录还是仅应用于所选记录。

⑥ 单击确定。
在这里插入图片描述

1.3问题解决

①在编辑会话之外进行字段计算时无法撤消计算结果。

②要在编辑会话之外计算值而不出现警告消息,可选中消息中的不再向我发出警告复选框。可在 ArcMap 选项 对话框的表选项卡中重新启用此警告消息。

③计算几何 对话框遵从编辑选项 对话框的常规选项卡所指定的小数位数(默认情况下为三位)。要更改此设置,单击“编辑器”工具条上的编辑器菜单,然后单击选项。此设置会保存在地图文档中。

2.“字段计算器”可能被禁用的原因

如果右键单击某字段时,字段计算器或计算几何命令不可用,请检查以下一些事项:

①右键单击了由 ArcGIS 管理的字段,因此导致无法手动编辑该字段。这些字段包括 ObjectID(OID 或 FID)字段、地理数据库要素类的 Shape_Length 和 Shape_Area 字段、coverage 中点或多边形要素类的面积、周长和 # 字段,以及 coverage 中 arc 要素类的 FNODE#、TNODE#、LPOLY#、RPOLY#、长度、和 # 字段。

②表中的数据源为只读,不能建立文件夹或地理数据库的写入权限,或者在 ArcMap 中不能正常修改数据源格式。还可以使用 EDG 或 SDC 数据或 ArcIMS 服务,它们通常可用于打开属性表但不能修改数据。

③未处于编辑会话中,只有处于编辑状态才能计算数据。例如,当处理版本化 ArcSDE 数据或参与地理数据库拓扑、几何网络或关系类的要素类时,必须处于编辑会话中。

④该字段从属于您的表所连接的表。您只能计算源表中字段的值。

⑤字段可能是无法计算的栅格、BLOB 或全局 ID 类型。要查看字段类型,可右键单击该字段然后单击“属性”。

3.使用“字段计算器”进行高级计算

字段计算器支持使用 VBScript 或 Python 代码块(对选定的字段进行计算前会处理数据)执行高级计算。例如,使用人口统计数据时,可能想要找到每个县的最大年龄组所占人口的百分比。可以使用逻辑结构(如“IF…THEN”语句和“Select Case”块)创建一个脚本来预处理数据。

简单的字段计算器表达式可直接输入至表达式文本框内。较复杂的表达式,如,多行脚本、循环和分支可在计算字段工具对话框上的代码块框中输入。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

每天一点Python——day47

#第四十七天字典生成式:字典生成的公式 a[ab,ac,ad] b[12,13,14] 把a,b列表合并为字典 将第一个列表中的元素作为字典当中的键,第二个列表中的元素作为字典当中的值 这个过程我们需要打包 我们需要使用内置函数zip()生成字典 #如图所示 #例&a…

基于深度学习的高精度塑料瓶检测识别系统(PyTorch+Pyside6+YOLOv5模型)

摘要:基于深度学习的高精度塑料瓶检测识别系统可用于日常生活中或野外来检测与定位塑料瓶目标,利用深度学习算法可实现图片、视频、摄像头等方式的塑料瓶目标检测识别,另外支持结果可视化与图片或视频检测结果的导出。本系统采用YOLOv5目标检…

推荐信模版(英文)计算机专业

推荐信模版(英文)计算机专业 ✅ 内容已校对 润色 ©️ 文章来源:https://blog.csdn.net/IYXUAN,原创内容,转载请注明! 推荐信(一) January 4, 2023 Dear Admissions Committe…

vue使用mapbox地图

1、下载依赖 npm install --save mapbox-gl mapbox/mapbox-gl-language 2、引入mapBox,将引入的内容封装为js文件 在api/map文件夹下新建mapbox.js文件 代码: import mapboxgl from mapbox-gl import mapbox-gl/dist/mapbox-gl.css import MapboxLang…

linux上搭建nfs服务

NFS(Network File System):它最大的功能就是可以通过网络,让不同的机器、不同的操作系统可以共享彼此的文件。 NFS服务器可以让PC将网络中的NFS服务器共享的目录挂载到本地端的文件系统中,而在本地端的系统中来看&…

【209. 长度最小的子数组】

目录 一、题目解析二、算法原理三、代码实现 一、题目解析 二、算法原理 注意点&#xff1a; 三、代码实现 我自己写的代码(我的评价是很挫) class Solution { public:int minSubArrayLen(int target, vector<int>& nums) {int left 0, right -1, ret INT_MAX…

MyCat2介绍以及部署和读写分离/分库分表(MyCat2.0)

一&#xff0c;MyCat入门 1.什么是mycat 官网&#xff1a;http://www.mycat.org.cn/​ mycat是数据库中间件 它可以干什么&#xff1f; 读写分离数据分片&#xff1a;垂直拆分&#xff0c;水平拆分多数据源整合 2.数据库中间件 ​ 中间件&#xff1a;是一类连接软件组件和…

FPGA实验三:状态机的设计

目录 一、实验目的 二、实验要求 三、实验代码 1.design source文件部分代码 2.测试文件代码 四、实验结果及分析 1、引脚锁定 2、仿真波形及分析 &#xff08;1&#xff09;设计好序列检测器 &#xff08;2&#xff09;仿真波形&#xff08;检测11010&#xff09; 3…

MySQL数据库第三课 ------简单命令再进阶-------成为大牛必备

作者前言 欢迎小可爱们前来借鉴我的gtiee秦老大大 (qin-laoda) - Gitee.com ———————————————————————————————— 目录 命令的简单介绍 1.重定向命令 2.cat 3. ln 4.grep 5.通配符 6.find 7.tar —————————————————————…

国金QMT量化交易系统的Bug及应对策略

国金QMT量化交易系统中的 账号成交状态变化主推 deal_callback() &#xff0c; 当账号成交状态有变化时&#xff0c;这个函数被客户端调用。 我的策略是&#xff0c;在handlebar()里面挂单&#xff0c;等待成交&#xff0c;而判断成交的方式是根据系统主推deal_callback()通知…

前置声明、源文件include、编译链接顺序问题

TestB.h (前置声明&#xff0c;无需在源文件include)重点&#xff1a; 1.前置声明用在指针变量使用&#xff0c;无需在头文件或源文件include 2.继承或者普通变量在头文件使用的时候(除非所有的编译顺序都正确&#xff0c;才能在源文件include)&#xff0c;最好不要在源文件i…

vue项目使用自定义域名开启本地服务(ip地址和域名映射)

前言 有的时候&#xff0c;我们直接用script请求需要在同一个顶级&#xff08;一级&#xff09;域名下才可以拿到数据。 本地服务在开启时一般都是localhost&#xff0c;或者带ip。如果想要自定义域名访问本地服务&#xff0c;需要做以下配置。 ip地址和域名映射 在域名请求…