字段属于SHP文件的重要组成部分,在某些时候需要对字段进行编号,这里为大家介绍一下字段编号相关的代码,希望能对你有所帮助。
数据来源
教程所使用的数据是从水经微图中下载的POI数据,除了POI数据,常见的GIS数据都可以从水经微图中下载。
水经微图
自动编号
在需要编号的字段上点击右键,选择计算字段,如下图所示。
选择计算字段
在显示的计算字段对话框内,number=autoIncrement(),代码块输入下面的代码,如下图所示。
rec=-1
def autoIncrement():
global rec
pStart = 1 #起始值为1,可修改
pInterval = 1 #间隔值为1,可修改
if (rec ==-1):
rec = pStart
else:
rec = rec + pInterval
return rec
计算字段设置
点击确定后可以看到字段已经按顺序自动编号,如下图所示。
计算结果
随机编号
除了按顺序编号之外,有的时候还需要生成随机数,在计算字段对话框内Random=getnums(),代码块内输入下面的代码,如下图所示。
import numpy
def getnums():
return numpy.random.randint(1,100)
计算字段设置
点击确定后完成随机数的生成,生成的随机数如下图所示。
生成的随机数
编号补零
在某些时候,除了编号之外,还需要在编号的前面补零,我们只需要在调用函数的时候做适当的修改即可,下面以自动编号并补零为例给大家介绍一下方法。
新建一个文本型字段,在计算字段对话框内,代码块填写和自动编号一样的代码,只是在调用的时候适当修改一下,调用函数为BH= (str(autoIncrement())).zfill(3),如下图所示。
rec=-1
def autoIncrement():
global rec
pStart = 1 #起始值为1,可修改
pInterval = 1 #间隔值为1,可修改
if (rec ==-1):
rec = pStart
else:
rec = rec + pInterval
return rec
计算字段设置
点击确定后可以看到已经在前面补零,如下图所示。
编号计算结果
结语
以上就是ArcGIS Pro字段编号相关代码的详细说明,主要包括了数据来源、自动编号、随机编号和编号补零等功能。