ArcGIS属性表排序

背景:现有一shp面图层未进行编号排序
需求:按照图层内各要素面积大小进行,新建编号字段进行排序。
实现步骤:
情况一:若FID字段就是按照面积大小进行排列的,则直接使用字段计算器,bh=FID+1即可。
      若是用python代码实现如下所示:
在字段计算器中选择显示代码块,解译程序选python,在预逻辑代码脚本中输入一下代码:

rec=-1
def autoIncrement():
   global rec
   pStart = 1 #从1开始,可修改
   pInterval = 1 #依次加1,可修改
   if (rec ==-1):
      rec = pStart
   else:
      rec = rec + pInterval
   return rec

在结果中输入autoIncrement()即可:
在这里插入图片描述
情况二:FID字段默认排序和需求的排序方式不同:
在python窗口中输入以下代码:

import arcpy 
rows = arcpy.UpdateCursor("09","","","","TBMJ A")#09是图层名称;TBMJ是需要根据大小排序的面积字段;A表示升序;可修改
i=1
for row in rows:
     row.BH_1=i
     i=i+1
     rows.updateRow(row)
del rows
del row

运行结果如下所示:
在这里插入图片描述

  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值