當前位置:首頁 » 編程語言 » arcgispython教程

arcgispython教程

發布時間: 2023-01-16 07:00:53

❶ arcgis9.3怎麼使用python

Python 表達式可通過 幾何對象中的屬性(type、extent、centroid、firstPoint、lastPoint、area、length、isMultipart 和 partCount)進行創建。

!shape.area!

Python 表達式可以使用具有面積或線性單位的幾何 area 和 length 屬性將值轉換為不同的測量單位(例如 !shape.length@kilometers!)。如果數據存儲在地理坐標系中且具有線性單位(例如英里),則使用測地線演算法計算長度。在地理數據中使用面積單位會產生不正確的結果,這是由於沿 globe 的十進制度並不一致。

面積測量單位關鍵字:

英畝 | 公畝 | 公頃 | 平方厘米 | 平方分米 | 平方英寸 | 平方英尺 | 平方千米 | 平方米 | 平方英里 | 平方毫米 | 平方碼 | 平方地圖單位 | 未知

線性測量單位關鍵字:

厘米 | 十進制度 | 分米 | 英尺 | 英寸 | 千米 | 米 | 英里 | 毫米 | 海里 | 磅 | 未知 | 碼

在工具對話框中,可將表達式直接輸入到表達式參數中,或者使用「欄位計算器」以交互方式構建表達式。

使用所選要素集(如從創建要素圖層或按屬性選擇圖層內的查詢中創建的要素集)時,此工具將只更新所選的記錄。

每次操作僅能對一個欄位應用計算。

現有欄位值將被覆蓋。如果想要保留原始欄位值,應創建輸入表副本

對於 Python 計算,必須在欄位名稱兩旁添加驚嘆號(!欄位名!)。

對於 VB 計算,欄位名稱必須用方括弧括起([欄位名])。

計算文本或字元欄位的字元串時,在對話框中,必須對字元串添加雙引號("字元串"),而在腳本中,還必須對加雙引號的字元串添加單引號('"字元串"')。

此工具也可用於更新字元項。應對使用字元串的表達式添加單引號(例如 [CHARITEM] = 『新字元串')。但是,如果字元串已包含單引號,則要對該字元串添加雙引號,例如 [CHARITEM] = "類型'A'"。

要計算數值欄位,可在表達式參數中輸入數值;值的兩旁無需加引號。

如果已指定 Python 表達式,則此工具支持 arcgis.rand() 函數。已為 ArcGIS 工具創建 arcgis.rand() 函數,不應將此函數與 Python Rand() 函數相混淆。arcgis.rand() 函數的可用分布的語法在隨機值的分布語法中進行介紹。

表達式與代碼塊會相互連接。代碼塊必須返回與表達式的關聯;代碼塊的結果應傳入到表達式中。

代碼塊參數可用於創建復雜表達式。您可以在對話框中直接輸入代碼塊,或在腳本中將代碼塊作為連續字元串輸入。

Python 數學模塊及格式可供代碼塊參數使用。您可以導入附加模塊。數學模塊可提供數論函數與表達函數、冪函數與對數函數、三角函數、角度轉換函數、雙曲函數以及數學常數。要了解更多有關數學模塊的內容,請參閱 Python 的幫助。

保存的 ArcGIS 先前版本的 VB .cal 文件可以直接使用或者只需做少量修改後即可使用。如果擁有使用 ArcObjects 的過去版本的 VBA 代碼,則計算需經過修改後才能用於 10.0。

計算連接數據時,您無法直接計算連接列。然而,您可以直接計算源表的列。要計算連接數據,必須先將連接表或連接圖層添加至 ArcMap。然後可以分別對此數據執行計算。這些更改將反映在連接列中。

計算欄位示例

❷ arcgis中打開python後,如何編程

此功能和Python的編輯模式是一樣的:
1.
編寫一行,運行一行;

2.
最大的的好處是,可以很方便的調用ArcGIS的介面,處理GIS數據;
3.
當然也可以使用ArcGIS
Toolboxes:

❸ 怎麼用python製作ArcGIS斷裂點插件

方法/步驟
新建一個txt文本,在文本中寫入如下代碼代碼作用是根據緯度和太陽傾角獲取正午太陽高度角和方位角。
將第一步的txt文本保存為*.py文件。

ArcToolbox
里,右鍵
toolbox,選添加->scripts,填寫如下圖文本(9.3版本界面):
單擊「下一步」後是參數配置頁面:Latitude、Declination是輸入參數,Sun
Angle、Arimuth是輸出參數,完成腳本參數設置。
5
運行腳本出現如下所示對話框,設置好輸入參數即可被Python腳本getparameterastext語句獲,以進行更多的後續操作。這實際上實現了Python與用戶的交互。
6
最後,將腳本工具拖動到模型構建器里(如下圖),腳本工具的輸出參數又可以作為其他處理過程的輸入參數,進而建立工作流模型。

❹ 如何用python在arcgis中編寫程序,求兩點的最短路徑

你是想學PYTHON編程還是只是想只得到這個PYTHON文件。可以給你提供一條簡潔的途徑用modelbuilder來實現,將多個SHP文件拖入進去,再把MERGE工具拖進去,雙擊modelbuilder中的merge工具框設置,再雙擊output dataset框設置輸出。然後將這些shp文件用倒數第二個按鈕添加鏈接的功能將他們一個個與merge工具框鏈接起來。最後點擊model-export-to srcipt-python 就會輸出一個python文件,可以用記事本打開查看裡面的代碼。

❺ arcgis利用 python設置高程顏色

1、四色填充演算法—回溯法。
2、ArcGIS生成鄰接表。
3、基於Python編寫工具計算每個省份的顏色。
4、在ArcGIS中添加腳本工具。
5、運行腳本工具。
6、以上就是arcgis利用python設置高程顏色的方法。

❻ arcgis怎麼用python

arcgis軟體中有專門的python窗口

❼ 怎樣用arcgis中的python進行批量投影

接到的需求是對文件夾下包括子目錄所有影像進行投影變換,在網上找了找,大家的代碼好像和需求不太一致,自己寫了一個小工具。

思路是遍歷文件夾所有.tif文件。

1.用os.walk()函數來獲取路徑和文件名

2.用 if 語句限制讀取後綴為.tif的文件

3.將文件路徑和文件名組合起來

4.調用arcpy.ProjectRaster_management語句投影變換並輸出

由於剛剛接觸python,難點主要在於os.walk()目錄的讀取這個函數的了解上。

以下是代碼

#coding=utf-8
importos
importarcpy
fromarcpyimport*

#定義一個函數,第一個參數是一個集合,用來接收所有.tif的路徑。第二個函數是指定的文件夾。
defhuoqu(jieshou,lujing):
fordirpath,dirnames,filenamesinos.walk(lujing):
forfilenameinfilenames:
ifos.path.splitext(filename)[1]=='.tif':
file1=dirpath+'\'+filename
jieshou.append(file1)

#這里變數的設置,GetParameterAsText函數來獲取對應在python工具箱中的位置
env.workspace=GetParameterAsText(0)
work=env.workspace
ref=GetParameterAsText(1)
tifz=[]

#調用自定義的函數
huoqu(tifz,work);

#對所有的影像進行循環投影變換,並且將輸出路徑設置為指定的文件夾+原本的名字
forfileintifz:
out=GetParameterAsText(2)+"/"+os.path.basename(file)
ProjectRaster_management(file,out,ref)

❽ 怎麼用python開發arcgis

在Pyhton寫的一些代碼,用戶交互不方便,用戶體驗比較差,不方便重用。在ArcGIS中可以將用寫的Python代碼導入到ToolBox中,這樣用起來就比較方便了。這里用按要素裁剪柵格的Python來演示如何導入ArcGIS中。代碼如下:

import sys
reload(sys)
sys.setdefaultencoding( "utf-8" )
import arcpy
import string
from arcpy.sa import *

try:
raster = arcpy.GetParameterAsText(0) #要裁剪的柵格
clip_feat = arcpy.GetParameterAsText(1) #裁剪要素類
field = arcpy.GetParameterAsText(2) #命名欄位
outworkspace = arcpy.GetParameterAsText(3) #命名欄位裁剪後輸出目錄

for row in arcpy.SearchCursor(clip_feat):
mask=row.getValue("Shape")
outPath=outworkspace+"\\"+str(row.getValue(field))
outExtractByMask = ExtractByMask(raster,mask)
outExtractByMask.save(outPath)

except arcpy.ExecuteError:
print arcpy.GetMessages() 在用戶工具箱中新建工具箱(在系統工具箱中不能新建),在工具箱右鍵,添加腳本;

輸入名稱、標簽、描述等信息。下一步,選擇腳本文件。(這里需要注意的是:一定要勾選"存儲相對路徑名"這個選項)

設置參數,這是最重要的一步。其中參數即代碼中GetParameterAsText(n),並選擇合適的數據類型,在參數屬性中也可以進行相關設置。如果輸出柵格名稱按裁剪要素中的某個欄位,需要設置"獲取息"屬性,還要進行過濾一下。

設置好一切參數過後,就可以來進行測試了。在本機上測試通!

接下來便是怎樣移植到其他電腦了的問題了。前面我說說過要存儲為相對路徑,否則,將報錯00576:腳本工具使用的腳本未處於所需位置。創建腳本工具時,有一個選項用於存儲相對路徑名(而不是絕對路徑名)。設置此選項後,腳本的相對位置和保存腳本工具的工具箱必須保持不變。執行工具時移動兩者中的任何一個都會出現此錯誤。

但改為相對路徑後,在其他電腦上也能正常運行,但彈出了警告窗口。原因是客戶機上沒有勾選擴展模塊相應的功能。這個示例需要勾選空間分析模板,因為使用了按掩膜提取這個工具。這個腳本實現的詳情參考:使用Python腳本批量裁切柵格

發布給他人,涉及到個人知識產權的問題,怎樣讓他人使用工具,又不能看到腳本代碼?如果編輯調試完成了,在腳本工具右鍵可導入腳本。

設置密碼後,即可。

熱點內容
如何選擇最佳配置 發布:2025-07-16 01:56:44 瀏覽:603
mad加密 發布:2025-07-16 01:52:12 瀏覽:424
linux64位內存 發布:2025-07-16 01:02:36 瀏覽:960
壓縮衣尺碼表 發布:2025-07-16 00:47:33 瀏覽:640
安卓恢復了出廠怎麼找回照片 發布:2025-07-16 00:43:56 瀏覽:933
為什麼說伺服器已停止響應 發布:2025-07-16 00:29:36 瀏覽:392
python判斷字元串是否為空 發布:2025-07-16 00:21:47 瀏覽:210
安卓轉蘋果用什麼軟體 發布:2025-07-16 00:21:45 瀏覽:628
安卓官服如何登ios 發布:2025-07-16 00:21:32 瀏覽:624
天龍搶店腳本 發布:2025-07-16 00:14:47 瀏覽:958