在ArcGIS中对图斑进行自上而下从左往右编号

在ArcGIS中为图斑实现自上而下、从左往右的编号,需结合坐标排序与脚本自动编号功能。以下是具体操作步骤:


一、添加并计算坐标字段

  1. 新建字段

    在图层属性表中添加两个双精度字段:cX(图斑中心点X坐标)和 cY(图斑中心点Y坐标)。

  2. 计算坐标值

    • 选中cX 字段,打开字段计算器,输入Python表达式:!shape.centroid.X!
    • 同理,cY 字段输入表达式:!shape.centroid.Y!

二、排序图斑

使用ArcGIS的 排序工具 (路径:数据管理工具 → 常规 → 排序),按以下规则排序:

  • 主要排序字段 :cY ,选择 降序(确保从上到下排列)。
  • 次要排序字段 :cX ,选择 升序(确保从左到右排列)。

保存生成的结果图层,其objectID就是排序后的新编号。


三、按某个字段编号

比如,需要按行政区单独编号,可按以下方式:

  1. 新建编号字段

    添加一个文本或整型字段(如BH),用于存储编号结果。

  2. 使用Python脚本生成编号

    在BH字段右键打开字段计算器,选择 Python 语言,勾选 显示代码块,输入以下代码:

    复制代码
    UniqueDict={}
    def idx(v):
        UniqueDict.setdefault(v,0)
        UniqueDict[v] += 1
        return UniqueDict[v]
    字段中调用这个函数,如下图,执行后即可实现每个行政区范围内从上到下,从左到右编号。
  3. 固定位数编号(可选)

    若需编号为固定位数(如3位:001, 002),在字段BH在执行: !BH!.zfill(3)

相关推荐
非科班Java出身GISer1 天前
ArcGIS JS 基础教程(38):StreamLayer 实时流数据图层
arcgis·arcgis js·arcgis js 流图层·streamlayer·arcgis 流数据图层·arcgis 实时流数据图层
赵钰老师2 天前
基于ArcGIS Pro、R、INVEST等多技术融合下生态系统服务权衡与协同动态分析
python·arcgis·数据分析·r语言
梦想的初衷~3 天前
MaxEnt 物种分布建模学习手册|理论 + R 语言 + ArcGIS 全套实操教程
arcgis·环境变量·r 语言·maxent 模型·物种分布建模·生态学研究·科研教程
jiushidt8 天前
ArcGIS Pro Add‑in 打包流程详解
arcgis·c#·.net·arcgispro
蓝悦无人机8 天前
《地面站软件开发》-第2章ArcGIS Maps SDK for Qt 改变视角
arcgis·上位机·地面站·qml·qt6·qt quick·天地图
bug嘛我经常写9 天前
MIKE21结合ArcGIS制作随时间变化的降水文件(.dfs2)-笔记
经验分享·笔记·arcgis
paiooo10 天前
用 XML 保存 LLM 会话得到高可读性会话
arcgis
Q一件事10 天前
ArcGIS中TypeError: can‘t multiply sequence by non-int of type ‘str‘错误
前端·javascript·arcgis
萧行之12 天前
Observable Plot 源码深度解析——1 认识 Observable Plot
arcgis
ノBye~12 天前
Codex CLI使用记录
arcgis