ArcGIS Pro字段編號相關代碼

2024年2月6日 19点热度 0人点赞

字段屬於SHP文件的重要組成部分,在某些時候需要對字段進行編號,這裡為大傢介紹一下字段編號相關的代碼,希望能對你有所幫助。

01

數據來源

教程所使用的數據是從水經微圖中下載的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字段編號相關代碼的詳細說明,主要包括了數據來源、自動編號、隨機編號和編號補零等功能。