教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 小学教育 >

ARCGIS教程:图斑整理之字段计算器使用技巧

来源:网络收集 时间:2026-09-06
导读: ArcGIS教程:图斑整理之字段计算器使用技巧 1.字段计算器简介 在数据整理过程中经常要用到对属性表的处理,即为字段进行赋值或运算。字段计算器(Field Calculator)是一个强大的处理字段值的工具,不仅可以实现快速批量赋值,还支持Python和VBScript,可以通

ArcGIS教程:图斑整理之字段计算器使用技巧

1.字段计算器简介

在数据整理过程中经常要用到对属性表的处理,即为字段进行赋值或运算。字段计算器(Field Calculator)是一个强大的处理字段值的工具,不仅可以实现快速批量赋值,还支持Python和VBScript,可以通过代码进行复杂条件的赋值工作,并且字段计算器还可以在Model Builder中调用,构建空间模型。

在某个属性字段的右键菜单中即可调出字段计算器,在该界面中即可对该字段进行统一批量赋值,如果勾选Show Codeblock可以编写代码实现条件赋值、复杂计算或是几何体的计算。下面我们就以国土行业的图斑数据整理为例,看看灵活而强大字段计算器是如何应用的。

2.应用实例

已有的图斑数据的属性表如下,两个字段分别代表二级地类的编码(DLBM)和名称(DLMC)。

截取拼接字符串

问题描述:从已有的DLBM(二级地类编码)中提取一级地类的编码,由于前两位即是一级地类编码,我们可以通过字符串的截取来实现

解决方法:创建字段YJDL,在字段计算器内选择Python,输入!DLBM![0:2]

注:Python中对字符串的处理非常简单,直接通过下标位置的索引来提取,拼接字符串则可使用加号来连接字段即可。

条件赋值

问题描述:根据一级地类的代码为其增加具体描述信息

解决方法:创建字段YJDLMC(一级地类名称),勾选Show Codeblock,根据YJDL的代码为其赋值,在YJDLMC=下面输入CalDLMC(!YJDL!),在上面的Pre-Logic Script Code空白处输入代码如下:

def CalDLMC(code):

if(code==’01’):

return“耕地”

elif(code==’02’):

return“园地”

else:

return“”

为重复记录进行编号

问题描述:将同一地类图斑自动编号(标记重复记录),例如根据DLBM字段,把具有相同值的记录标出来,并且按照从小到大的排序自动增加一个编号,实现如下效果:

解决方法:增加DLCOUNT字段,计算每种用地类型有多少块,即同类型的DLBM按顺序从1开始赋值,勾选ShowCodeblock,编写代码:

UniqueDict={}

defisDuplicateIndex(inValue):

UniqueDict.setdefault(inValue,0)

UniqueDict[inValue]+=1

return str(UniqueDict[inValue])

计算几何体信息

计算图斑面积:!Shape.Area!

质心X坐标:!Shape.CENTROID.X!

质心Y坐标:!Shape.CENTROID.Y!

字段间运算

在上一步计算得到的面积基础上进行单位转换,如将平方米转换为平方公里

!Area!/1000000

顺序赋值,即为每条记录进行唯一值编号

ARCGIS教程:图斑整理之字段计算器使用技巧.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/43213.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)