arcgis python字段计算器_使用“计算字段”工具

“计算字段”工具的提示及最佳做法

为要素类、要素图层或栅格计算字段的值。

可使用 VBScript 或标准 Python 格式创建表达式。表达式所使用的字符串的格式化样式应当与上下文环境(类型)相适应。

可使用几何对象(包括 type、extent、centroid、firstPoint、lastPoint、area、length、isMultipart 和 partCount)中的属性来创建 Python 表达式,例如 !shape.area!。

Python 表达式可以将几何的 area 与 length 属性与面积或线性单位结合使用,从而将值转换为不同的测量单位(如 !shape.length@kilometers!)。如果数据存储在地理坐标系中且具有线性单位(例如英里),则使用测地线算法计算长度。在地理数据中使用面积单位会产生不正确的结果,这是因为沿地球面的十进制度数并不一致。

!shape.area@acres!面积测量单位关键字: 英亩 | 公亩 | 公顷 | 平方厘米 | 平方分米 | 平方英寸 | 平方英尺 | 平方千米 | 平方米 | 平方英里 | 平方毫米 | 平方码 | 平方地图单位 | 未知

线性测量单位关键字:厘米 | 十进制度 | 分米 | 英尺 | 英寸 | 千米 | 米 | 英里 | 毫米 | 海里 | 磅 | 未知 | 码

使用所选要素集(如从

每次操作仅能对一个字段应用计算。

对于 VBScript,字段名始终用 [ ] 括起来。

对于 Python 计算,必须在字段名称两边添加惊叹号(!fieldname!)。

计算文本或字符字段的字符串时,在对话框中,字符串必须使用双引号("字符串"),而在脚本中,还必须对使用双引号的字符串添加单引号('"字符串"')。

This tool can also be used to update character items. Expressions using a character string should be wrapped, using single quotes—for example, [CHARITEM] = 'NEW STRING'. However, if the character string has embedded single quotes, wrap the string using double quotes—for example, [CHARITEM] = "TYPE'A'".

要计算数值字段,可在表达式参数中输入数值;值的两旁无需加引号。

“计算字段”工具支持 arcgis.rand() 函数,但表达式类型必须是 Python。arcgis.rand() 函数是为 ArcGIS 工具而创建,不应与 Python Rand() 函数相混淆。

表达式与代码块会相互连接。代码块必须返回与表达式的关联;代码块的结果应传入到表达式中。

Python math模块及格式可供代码块参数使用。您可以导入附加模块。math模块可提供数论函数与表达函数、幂函数与对数函数、三角函数、角度转换函数、双曲函数以及数学常数。要了解更多有关math模块的内容,请参阅 Python 帮助。

Saved VB .cal files from previous versions of ArcGIS may work or require minimal modifications. If you have VBA code from past releases that use ArcObjects, you will need to modify your calculations to work.

计算连接数据时,您无法直接计算连接列。然而,您可以直接计算源表的列。要计算连接数据,必须先将连接表或连接图层添加至地图。然后可以分别对此数据执行计算。这些更改将反映在连接列中。

在 ArcGIS Engine Runtime 或 ArcGIS for Server 中运行“计算字段”时,表达式类型必须为 Python。如果工具被包含在将要发布到 ArcGIS for Server 的模型中,您就只能用 Python 作为表达式类型。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值