arcgis中字段自动编号的两种方法
- 格式:docx
- 大小:805.21 KB
- 文档页数:4
Arcgis编码设置1.'dbfDefault' 设置⽅法1. 开始 -- 运⾏,输⼊”Regedit“,打开注册表。
2. 如是⽤的是 10.x 版本 ArcGIS Desktop,定位到 ‘My Computer\HKEY_CURRENT_USER\Software\ESRI\Desktop 10.x'如果是9.3.1之前的版本,定位到 'My Computer\HKEY_CURRENT_USER\Software\ESRI'。
3. 创建项 'Common',接着在其下创建 'CodePage' 项,添加 '字符串’,名称: dbfDefault,健值:oem(或者 936)。
如下为⽀持的编码值:OEM Code Page Values:OEM, 437, 708, 720, 737, 775, 850, 852, 855, 857, 860, 861, 862, 863, 864, 865, 866, 869, 932, 936, 950ANSI Code Page Values:ANSI, 1250, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 1258, Big5, SJISISO Code Page Values:ISO, 88591, 88592, 88593, 88594, 88595, 88596, 88597, 88598, 88599, 885910, 885913, 885915, EUCUnicode Values:UTF-8现在,Shapefiles 可以以 UTF-8 存储,但是,只有在 ArcGIS Desktop 中才能被识别。
2.看不看都⾏部分-----------------------------------------------------------------------------------------------------------------------在 ArcGIS Desktop (ArcMap, ArcCatalog, and ArcToolbox) 中,有编码页转换功能(CODE PAGE CONVERSION),可以读写多种字符编码的 shapefile 和dBASE 表。
arcgis字段顺序编号【原创实用版】目录1.引言2.ArcGIS 字段顺序编号的概念和作用3.ArcGIS 字段顺序编号的方法4.ArcGIS 字段顺序编号的应用实例5.结论正文【引言】在 GIS 软件中,地理信息数据通常以图层的形式存储,图层中的数据以字段的形式组织。
字段是地理信息数据中的基本单元,用于描述某一地理现象的属性。
在 ArcGIS 中,字段顺序编号是一种重要的数据组织和管理方式,对于数据的正确显示和分析具有重要意义。
本文将介绍 ArcGIS 字段顺序编号的概念、方法和应用实例。
【ArcGIS 字段顺序编号的概念和作用】ArcGIS 字段顺序编号是指地图数据中的各个字段按照一定的顺序进行排列。
这种编号方式有助于提高数据处理的效率,便于数据的显示、查询和分析。
具体来说,字段顺序编号的作用主要体现在以下几个方面:1.便于数据的显示:按照字段顺序编号,GIS 软件可以按照设定的顺序在图层中显示字段数据,便于用户观察和理解。
2.利于数据的查询:字段顺序编号可以提高查询效率,用户可以根据编号快速定位到所需的字段数据。
3.便于数据的分析:在进行空间分析时,字段顺序编号有助于 GIS 软件按照设定的顺序处理数据,提高分析的准确性和效率。
【ArcGIS 字段顺序编号的方法】在 ArcGIS 中,可以采用以下方法对字段进行顺序编号:1.利用图层文件的.dbf 文件进行编号:在 ArcGIS 中,图层数据以.shp 文件存储几何信息,以.dbf 文件存储属性数据。
用户可以在.dbf 文件中对字段进行顺序编号。
具体操作是,在 ArcGIS 中打开.dbf 文件,选择需要编号的字段,然后在“属性”窗口中设置字段的“编号”字段类型,并设置相应的编号规则。
2.在 Python 中编程实现编号:用户可以使用 Python 编写脚本,对图层数据进行批量编号。
具体方法是,使用 arcpy 模块的“SearchCursor”方法,遍历图层中的所有要素,并为每个要素的字段设置编号。
关于ARCGIS中字段自动编号的两种方法一、根据某一字段属性排序,并重新自动编号。
首先,打开arcgis,加入咱们要进行排序并重新编号的数据,如下图,打开Python编辑器。
然后,在Python编辑器中输入以下代码:import arcpyrows = arcpy.UpdateCursor("数据名称","","","","面积A")i=1for row in rows:row.BH=ii=i+1rows.updateRow(row)del rowsdel row其中,arcpy.UpdateCursor指调用UpdateCursor这个函数,其中包括5个参数,这里我们只需要用到第一个和第五个参数,其他参数均用“”空值代替。
第一个参数为:数据名称(前提是这个数据加入了ARCMAP中)第五个参数为:要排序的字段名称+空格+A,A指排升序这里重点说下BH,就是进行自动编号的字段,此字段名称必须为英文字符,如果为汉字,则不能识别。
如下图:最后,输入完成后,两次回车,就直接运行了。
结果如下,根据面积字段的属性,进行了重新排序,并进行了自动编号。
二、字段计算器自动编号。
首先,打开字段计算器。
使用Python计算:然后,复制这段代码到预逻辑脚本代码框中,在下面排序=框中输入px(),确定。
re=0def px():global rea = 1b = 1if (re == 0):re = aelse:re = re + breturn re如果用VB脚本自动编号:选中上面的VB脚本,直接在代码块中输入[FID]+1,确定,同样的效果。
两种自动编号的方法区别在于:一种是按照原顺序,生成一组序号。
另一种是根据其中一个字段值的属性重新排序,并重新编号。
Arcgis使用字段计算器对同一地类图斑自动编号使用字段计算器对同一地类图斑自动编号(标记重复记录) 问题描述:在某个表中把某个字段(如字段一)中具有相同值的记录标出来,并且按照从小到大的排序自动增加一个编号,存储在字段二中,实现如下的效果:
FID 字段1 字段2
1 001 0011
2 001 0012
3 002 0021
4 002 0022
解决方法:在ArcGIS10中实现方法如下,字段2右键调出字段计算器,选择Python脚本,在代码块中写: UniqueDict = {}
def isDuplicateIndex(inValue):
UniqueDict.setdefault(inValue,0)
UniqueDict[inValue] += 1
return str(inValue)+str(UniqueDict[inValue])
(无须重复标记)
UniqueDict = {}
def isDuplicateIndex(inValue):
UniqueDict.setdefault(inValue,0)
UniqueDict[inValue] += 1
return UniqueDict[inValue]
在字段2=的语句下面写:
isDuplicateIndex( !字段1! )
即可实现问题中的要求,字段计算器是一个强大的为字段赋值的工具,支持Python和VBScript代码,并且可以在Model Builder中调用。
该代码可以按照地类对图斑进行编号,或者按某个行政区的字段对图斑进行编号。
方法一:
根据小班质心坐标进行编号:
第一步:打开属性表,添加字段质心X坐标和Y坐标。
第二步:计算质心坐标,并导出属性表。
第三步:将X、Y坐标除以一个整数并取整。
第四步:对取整后的坐标值进行排序,先Y坐标降序排列,然后X坐标升序排列。
第五步:用公式IF(C3=C2,D2+1,1)(用中文表示就是:如果C3=C2,那么D3就等于D2+1,否则就D3等于1)进行编号。
(此方法无法解决跨越多个小班的一长块小班)
方法二:
根据小班左上角坐标进行编号:
第一步:打开属性表,添加字段Xmin坐标和Ymax坐标。
第二步:计算Xmin坐标和Ymax坐标,ArcGIS10.0中求多边形的四至点可以直接根据字段计算器,利用Python语句直接求得
minX=!shape.extent.xmin!
maxX=!shape.extent.xmax!
minY=!shape.extent.ymin!
maxY=!shape.extent.ymax!
第三步、第四步、第五步同方法一。
arcgis字段计算器对字段重复内容自动编号的方法文章标题:探索ArcGIS字段计算器对字段重复内容的自动编号方法一、引言在日常工作中,我们经常会遇到需要对字段中的重复内容进行编号的情况。
在ArcGIS软件中,字段计算器是一个非常强大的工具,可以帮助我们实现对字段中重复内容的自动编号。
本文将重点探讨ArcGIS字段计算器对字段重复内容自动编号的方法。
二、ArcGIS字段计算器简介ArcGIS字段计算器是ArcMap软件中的一个重要工具,它可以在属性表中对字段进行计算和修改。
通过字段计算器,我们可以执行诸如数字运算、文本连接、逻辑判断等操作。
在处理字段中的重复内容时,字段计算器尤为重要,它可以帮助我们实现对重复内容的自动编号。
三、字段重复内容自动编号的方法1. 查找重复内容在使用字段计算器对重复内容进行自动编号之前,首先需要找出字段中的重复内容。
通过ArcMap软件提供的工具或者SQL查询语句,我们可以轻松地找出字段中的重复内容,并对其进行标记。
2. 使用字段计算器进行自动编号一旦找出了字段中的重复内容,接下来就可以使用字段计算器进行自动编号了。
在字段计算器中,我们可以使用Python等语言编写脚本,实现对重复内容的自动编号。
在编写脚本时,我们可以利用循环、条件判断等语句,确保每个重复内容都能被正确编号。
3. 灵活运用函数和表达式除了编写Python脚本外,字段计算器还提供了丰富的函数和表达式,可以帮助我们更高效地对重复内容进行编号。
在字段计算器中,我们可以使用字段值、条件语句、字符串函数等,灵活地实现对重复内容的自动编号。
四、个人观点和理解在实际工作中,我发现ArcGIS字段计算器对字段重复内容的自动编号非常便捷高效。
通过合理运用字段计算器提供的工具和函数,我们可以轻松地实现对重复内容的自动编号,大大提高了工作效率和数据处理的准确性。
我也意识到在使用字段计算器时,需要对字段的数据类型、特性和业务逻辑有深入了解,才能更好地实现字段的自动编号。
Arcgis从上到下,从左到右按顺序编号1、打开所要编号的图层属性表,添加字段xmin,ymax,字段类型选择双精度2、添加字段后如图:3、分别在xmin、ymax字段上单击字段计算器,按如图输入Python语句,计算每个面xmin、ymax的值4、打开工具箱arctoolbox,找到数据管理工具(Data Management)——常规——排序工具,输入要排序的图层,将字段ymax,xmin分别按下列排序方法选择,输出数据集5、打开输出图层,OBJECTID即为图层内所有图形按照从上到下,从左到右重新排序后的结果,编号可通过新建字段将OBJECTID赋值给编号字段。
6、排序前后如图所示,为展示效果,随手所画图中所示图形,无实际使用意义,仅供参考。
排序前图形编号自上而下,从左到右排序后图形编号Arcgis批量条件语句赋值以三调地类编码为例,将地类名称根据地类编码条件赋值Arcgis字段计算器Python脚本代码如下:def FZ(f):if f =="0102":return "水浇地"elif f =="0103":return "旱地"elif f =="0201":return "果园"elif f =="0204":return "其他园地"elif f =="0301":return "乔木林地"elif f =="0305":return "灌木林地"elif f =="0307":return "其他林地"elif f =="0404":return "其他草地"elif f =="05H1":return "商业服务业设施用地"elif f =="0601":return "工业用地"elif f =="0602":return "采矿用地"elif f =="0701":return "城镇住宅用地"elif f =="0702":return "农村宅基地"elif f =="0508":return "物流仓储用地"elif f =="0809":return "公园与绿地"elif f =="0810":return "公园与绿地"elif f =="0810A":return "广场用地"elif f =="08H1":return "机关团体新闻出版用地"elif f =="08H2":return "科教文卫用地"elif f =="09":return "特殊用地"elif f =="1001":return "铁路用地"elif f =="1003":return "公路用地"elif f =="1004":return "城镇村道路用地"elif f =="1005":return "交通服务场站用地"elif f =="1006":return "农村道路"elif f =="1009":return "管道运输用地"elif f =="1101":return "河流水面"elif f =="1103":return "水库水面"elif f =="1104":return "坑塘水面"elif f =="1104A":return "养殖坑塘"elif f =="1106":return "内陆滩涂"elif f =="1107":return "沟渠"elif f =="1107A":return "干渠"elif f =="1109":return "水工建筑用地"elif f =="1201":return "空闲地"elif f =="1202":return "设施农用地"elif f =="1206":return "裸土地"else:return ""调用定义函数DLMC=FZ(!DLBM!)注意:Python 强制要求将缩进作为语法的一部分,所以空格为两个或四个来定义每个逻辑级别。
arcgis编号公式ArcGIS是一款功能强大的地理信息系统软件,它可以帮助用户处理地理空间数据,并进行地理空间分析。
在ArcGIS中,编号公式是一种非常重要的功能,它可以帮助用户对数据进行编号,并进行相应的操作和分析。
本文将介绍ArcGIS编号公式的使用方法和注意事项。
我们需要了解ArcGIS编号公式的基本语法和规则。
在ArcGIS中,编号公式使用的是Python语言,因此我们需要掌握一些Python 的基本知识。
在使用编号公式之前,我们需要先了解数据的结构和属性,以便正确地编写编号公式。
在ArcGIS中,编号公式主要用于对属性字段进行编号。
在数据表中,我们可以为每个属性字段设置一个编号,这个编号可以是数字、字母或其他字符。
通过编号公式,我们可以根据数据的特点和需求,对属性字段进行灵活的编号操作。
使用ArcGIS编号公式时,我们需要注意以下几点:1. 确定编号字段:在使用编号公式之前,我们需要确定一个适合的字段用于存储编号。
这个字段可以是已有的字段,也可以是新建的字段。
2. 编写编号公式:根据数据的特点和需求,我们可以编写相应的编号公式。
在编写公式时,我们可以使用Python的各种函数和操作符,以及ArcGIS提供的一些特殊函数和工具。
3. 测试和应用编号公式:在编写完编号公式后,我们需要对公式进行测试,并确保其能够正确地生成编号。
在测试时,我们可以使用ArcGIS提供的工具和功能,以及一些辅助的数据和方法。
除了以上注意事项,我们还需要注意以下几点:1. 数据的准确性:在使用编号公式时,我们需要确保数据的准确性。
如果数据存在错误或缺失,可能会导致编号公式生成错误的编号。
2. 编号的唯一性:在对数据进行编号时,我们需要确保编号的唯一性。
如果存在重复的编号,可能会导致数据分析和操作的错误。
3. 数据的完整性:在使用编号公式时,我们需要确保数据的完整性。
如果数据存在缺失或不完整,可能会导致编号公式无法正常生成编号。
arcgis怎样将图斑自上而下,从左到右编号
很多工作要求将图斑自上而下、从左到右排序,arcgis没有现成的工具做这事情,许多软件虽然能做,但方式是采用按质心点来排序,这种方法有很多弊端,比如有个图斑从左上角开始一直延伸到左下角,按理说应该是第一个图斑,但按质心排序时会排到后边去。
下面介绍的方法是按照每个图斑的最小外包矩形的左上角坐标来排序,这样的排序方法基本符合要求。
具体步骤:
1、在属性表中增加xmin、ymax、tbxh字段用于存放外包矩形左上角x、y坐标和排序后的图斑序号
2、将附件解压,里边有shape_Get_X_Min.cal和shape_Get_Y_Max.cal两个文件分别用于计算xmin和ymax
3、开始编辑,打开属性表,在xmin上点右键,选field calculator,然后点load,将shape_Get_X_Min.cal载入
点OK,xmin将填入字段
4、在ymax上点右键,选field calculator,然后点load,将shape_Get_Y_Max.cal载入,计算ymax
5、导出属性表到dbf,在excel里将其打开,按ymax降序,xmin升序排序
6、在excel里将表增加一个字段,比如bh,令bh=row()-1,将表另存为.xls文件。
7、在arcmap里将属性表和上步保存的xls文件通过objectid或fid做join。
8、开属性表,在tbxh上点右键,令tbxh等于xls中的bh
9、保存结果。
这样做后,排序后的图斑编号就保存在了tbxh里。
关于ARCGIS中字段自动编号的两种方法一、根据某一字段属性排序,并重新自动编号。
首先,打开arcgis,加入咱们要进行排序并重新编号的数据,如下图,打开Python编辑器。
然后,在Python编辑器中输入以下代码:import arcpyrows = arcpy.UpdateCursor("数据名称","","","","面积A")i=1for row in rows:row.BH=ii=i+1rows.updateRow(row)del rowsdel row其中,arcpy.UpdateCursor指调用UpdateCursor这个函数,其中包括5个参数,这里我们只需要用到第一个和第五个参数,其他参数均用“”空值代替。
第一个参数为:数据名称(前提是这个数据加入了ARCMAP中)第五个参数为:要排序的字段名称+空格+A,A指排升序这里重点说下BH,就是进行自动编号的字段,此字段名称必须为英文字符,如果为汉字,则不能识别。
如下图:最后,输入完成后,两次回车,就直接运行了。
结果如下,根据面积字段的属性,进行了重新排序,并进行了自动编号。
二、字段计算器自动编号。
首先,打开字段计算器。
使用Python计算:然后,复制这段代码到预逻辑脚本代码框中,在下面排序=框中输入px(),确定。
re=0def px():global rea = 1b = 1if (re == 0):re = aelse:re = re + breturn re如果用VB脚本自动编号:选中上面的VB脚本,直接在代码块中输入[FID]+1,确定,同样的效果。
两种自动编号的方法区别在于:一种是按照原顺序,生成一组序号。
另一种是根据其中一个字段值的属性重新排序,并重新编号。
arcgis批量编号一、背景介绍在GIS数据处理中,经常需要给数据集中的要素进行编号,以便对其进行标识、管理和查询。
而对于大量数据集的编号工作,手动逐个编号耗时耗力且容易出错。
因此,使用ArcGIS进行批量编号是一种高效且准确的方法。
二、ArcGIS批量编号的方法和步骤1. 准备工作在开始之前,需要确保已经安装了ArcGIS软件,并且已经导入了需要进行编号的数据集。
2. 打开ArcGIS软件双击桌面上的ArcGIS图标,打开软件。
3. 导入数据集点击“文件”菜单,选择“添加数据”,将需要进行编号的数据集导入到ArcGIS中。
4. 创建编号字段在数据表中,选择需要进行编号的字段,右键点击该字段的列名,选择“属性”选项,然后点击“添加字段”按钮,在弹出的对话框中填写字段名和字段类型,点击“确定”按钮创建编号字段。
5. 编号设置在数据表中,选中编号字段,右键点击该字段的列名,选择“字段计算器”选项,弹出字段计算器对话框。
6. 设置编号规则在字段计算器对话框中,选择“VBScript”作为计算语言,然后在表达式框中输入以下代码:"编号字段名" = "起始编号" + [FID]其中,"编号字段名"为之前创建的编号字段的名称,"起始编号"为起始的编号值,[FID]代表数据表中的唯一标识字段。
7. 执行批量编号点击字段计算器对话框中的“确定”按钮,执行批量编号操作。
此时,ArcGIS将根据编号规则对数据集中的要素进行批量编号。
8. 验证编号结果在数据表中查看编号字段的值,确保编号结果正确无误。
9. 保存编号结果点击“文件”菜单,选择“另存为”,将编号结果保存为新的数据集。
10. 完成批量编号至此,使用ArcGIS进行批量编号的操作已经完成。
三、注意事项1. 执行批量编号操作前,请务必备份原始数据集,以防出现意外情况。
2. 在设置编号规则时,需根据实际情况调整起始编号的值和编号字段的名称。
第024篇:ArcGIS中实现要素的⾃动编号最近⼜⽤到这个⾃动编号功能,所以翻出来了⽼博客。
之前写的太糙了,这次找出来发现连⾃⼰都不会⽤了,这⾖腐渣⼯程鸣谢:⼀位不轻易透明姓名的⼤佬⼉使⽤场景:给shp⾥的要素重新编号。
代码实现:给Id字段从1开始以1递增⾃动编号(⼀)ArcMap中,打开Python窗⼝,输⼊以下代码并按回车运⾏rows = arcpy.UpdateCursor('D:/New_Shapefile.shp','','','','') #第⼀对双引号内写数据的绝对位置,Python 的注释要⽤#i = 0for row in rows:i = 1row.setValue('ID', i) #ID这个字段是⾃⼰提前在数据属性表中新增的,⽤于存储我们要写⼊的编号 rows.updateRow(row)print '成功连续编号!'备注:(1)'arcpy.UpdateCursor函数所需参数的各含义,可查看ArcMap帮助⽂档https:///zh-cn/pro-app/arcpy/functions/updatecursor.htm(2)如该数据已加⼊视图,可以采⽤重新添加数据的⽅法后查看代码执⾏效果。
(⼆)IDLE中新建窗⼝,写⼊代码后保存为.py⽂件按F5运⾏# -*- coding: cp936 -*-import arcpyrows = arcpy.UpdateCursor('D:/New_Shapefile.shp','','','','')i = 0for row in rows:row.setValue('ID', i) #在IDLE中要⼗分注意缩进,此处缩进⽤上⼀⾏末尾回车的办法来控制,后续保持⼀致rows.updateRow(row)print '成功连续编号!' #这⾥的print,缩进与不缩进,打印效果是不同的,可以⾃⾏尝试⼀下。
Arcgis使用字段计算器对同一地类图斑自动编号使用字段计算器对同一地类图斑自动编号(标记重复记录) 问题描述:在某个表中把某个字段(如字段一)中具有相同值的记录标出来,并且按照从小到大的排序自动增加一个编号,存储在字段二中,实现如下的效果:
FID 字段1 字段2
1 001 0011
2 001 0012
3 002 0021
4 002 0022
解决方法:在ArcGIS10中实现方法如下,字段2右键调出字段计算器,选择Python脚本,在代码块中写: UniqueDict = {}
def isDuplicateIndex(inValue):
UniqueDict.setdefault(inValue,0)
UniqueDict[inValue] += 1
return str(inValue)+str(UniqueDict[inValue])
(无须重复标记)
UniqueDict = {}
def isDuplicateIndex(inValue):
UniqueDict.setdefault(inValue,0)
UniqueDict[inValue] += 1
return UniqueDict[inValue]
在字段2=的语句下面写:
isDuplicateIndex( !字段1! )
即可实现问题中的要求,字段计算器是一个强大的为字段赋值的工具,支持Python和VBScript代码,并且可以在Model Builder中调用。
该代码可以按照地类对图斑进行编号,或者按某个行政区的字段对图斑进行编号。
arcgis字段计算器编号
在ArcGIS字段计算器中,编号可以使用以下方式进行计算:
1.使用字段序号:
可以使用 !OID! 计算字段的序号。
OID为对象识别(ObjectID)字段,会为每个要素生成唯一的数字。
你可以使用 !OID! 命令创建一个以1开始逐渐递增的编号。
2. 使用Python脚本:
你可以使用Python脚本来创建编号。
首先,选择Python解释器,然后编写一个脚本来生成你想要的编号。
例如,你可以使用循环语句和计数器来创建连续的编号。
3.使用自定义函数:
如果简单的编号方法不能满足你的需求,你可以自定义一个函数来生成编号。
你可以使用Python或VBScript来创建自定义函数,并在字段计算器中使用它。
无论你选择哪种方式,都需要确保你对要素的顺序有所了解,并且在计算编号之前对要素进行正确的排序。
在执行字段计算操作之前,建议先对图层进行排序,以确保要素按照你的排序方式进行编号。
arcgisfid的编号原则
ArcGIS FID (Feature ID or Object ID) 是 ArcGIS 软件中对要素进行唯一编号的一种方式。
每个要素在数据表中都会分配一个 FID,以便在进行空间和属性操作时进行标识和引用。
ArcGIS FID 的编号原则如下:
1.唯一性:每个要素在数据表中都必须有唯一的FID。
这意味着每个要素的FID在整个数据集中都是唯一的,不会与其他要素的FID重复。
3.连续性:FID号的分配是连续的,从一个整数开始依次增加。
当新要素被添加到数据表中时,会为其分配一个新的未使用的FID。
4. 自动分配:FID 号是由 ArcGIS 在要素被添加到数据表中时自动分配的。
用户无需手动分配 FID 号,系统会自动管理。
5.无含义性:FID号本身没有任何含义,只是一个用于标识和引用要素的唯一编号。
FID号通常是一系列连续的整数,没有包含任何与要素相关的信息。
6.不可更改性:FID号一旦分配给要素,在数据表中是不可更改的。
即使用户对要素的属性进行了修改,FID号也会保持不变。
7.关联性:FID号用于将不同的记录和表关联起来。
在进行空间和属性操作时,常常需要使用FID号来引用相关联的要素。
总结起来,ArcGIS FID 的编号原则是唯一性、持久性、连续性、自动分配、无含义性、不可更改性和关联性。
这些原则确保了每个要素在数据表中都有一个唯一的标识符,并能够在进行空间和属性操作时进行引用和关联。
关于 ARCGIS中字段自动编号的两种方法一、根据某一字段属性排序,并重新自动编号。
首先,打开arcgis ,加入咱们要进行排序并重新编号的数据, 如下图, 打开Python 编辑器。
然后,在Python 编辑器中输入以下代码:import arcpyrows = arcpy.UpdateCursor(" 数据名称","","",""," 面积A")i=1for row in rows:row.BH=ii=i+1rows.updateRow(row)del rowsdel row其中,arcpy.UpdateCursor 指调用UpdateCursor 这个函数,其中包括 5 个参数,这里我们只需要用到第一个和第五个参数,其他参数均用“”空值代替。
第一个参数为:数据名称(前提是这个数据加入了ARCMAP 中)第五个参数为:要排序的字段名称+ 空格+A ,A 指排升序这里重点说下BH ,就是进行自动编号的字段,此字段名称必须为英文字符,如果为汉字,则不能识别。
如下图:最后,输入完成后,两次回车,就直接运行了。
结果如下,根据面积字段的属性,进行了重新排序,并进行了自动编号。
二、字段计算器自动编号。
首先,打开字段计算器。
使用Python计算:然后,复制这段代码到预逻辑脚本代码框中, 在下面排序= 框中输入px() , 确定。
re=0def px():global rea = 1b = 1if (re == 0):re = aelse:re = re + breturn re如果用VB 脚本自动编号:选中上面的VB 脚本,直接在代码块中输入[FID]+1 ,确定,同样的效果。
两种自动编号的方法区别在于:一种是按照原顺序,生成一组序号。
另一种是根据其中一个字段值的属性重新排序,并重新编号。
知识改变命运。
在 ArcGIS 中,可以使用字段计算器来创建编号。
具体步骤如下:
1. 打开 ArcGIS 并加载需要编辑的图层。
2. 打开属性表,找到需要添加编号的字段。
3. 右键点击该字段,选择“计算字段”选项。
4. 在弹出的对话框中,输入以下代码:
```
!FID!
```
其中,FID 是要素的唯一标识符,类似于编号。
5. 点击“确定”按钮,关闭对话框。
完成上述步骤后,将在所选字段中添加与要素对应的唯一编号。
如果需要自定义编号格式或从特定数字开始编号,可以使用 Python 脚本来实现。
具体步骤如下:
1. 打开 ArcGIS 并加载需要编辑的图层。
2. 打开属性表,找到需要添加编号的字段。
3. 右键点击该字段,选择“计算字段”选项。
4. 在弹出的对话框中,选择“Python”选项卡。
5. 在代码编辑器中输入以下代码:
```python
def autoIncrement():
global rec
pStart = 1 # 初始值
pInterval = 1 # 间隔值
if (rec == 0):
rec = pStart
else:
rec = rec + pInterval
return rec
```
6. 在“表达式”文本框中输入以下代码:
```python
autoIncrement()
```
7. 点击“确定”按钮,关闭对话框。
完成上述步骤后,将在所选字段中添加自动递增的编号。
可以根据需要调整初始值和间隔值。
关于ARCGIS中字段自动编号的两种
方法
一、根据某一字段属性排序,并重新自动编号。
首先,打开arcgis,加入咱们要进行排序并重新编号的数据,如下图,打开Python编辑器。
然后,在Python编辑器中输入以下代码:
import arcpy
rows = arcpy.UpdateCursor("数据名称","","","","面积A")
i=1
for row in rows:
row.BH=i
i=i+1
rows.updateRow(row)
del rows
del row
其中,
arcpy.UpdateCursor指调用UpdateCursor这个函数,其中包括5个参数,这里我们只需要用到第一个和第五个参数,
其他参数均用“”空值代替。
第一个参数为:数据名称(前提是这个数据加入了ARCMAP中)
第五个参数为:要排序的字段名称+空格+A,A指排升序
这里重点说下BH,就是进行自动编号的字段,此字段名称必须为英文字符,如果为汉字,则不能识别。
如下图:
最后,输入完成后,两次回车,就直接运行了。
结果如下,根据面积字段的属性,进行了重新排序,并进行了自动编号。
二、字段计算器自动编号。
首先,打开字段计算器。
使用Python计算:
然后,复制这段代码到预逻辑脚本代码框中,在下面排序=框中输入px(),确定。
re=0
def px():
global re
a = 1
b = 1
if (re == 0):
re = a
else:
re = re + b
return re
如果用VB脚本自动编号:选中上面的VB脚本,直接在代码块中输入[FID]+1,确定,同样的效果。
两种自动编号的方法区别在于:
一种是按照原顺序,生成一组序号。
另一种是根据其中一个字段值的属性重新排序,并重新编号。