導航:首頁 > 編程語言 > arcgis中怎麼寫python腳本文件

arcgis中怎麼寫python腳本文件

發布時間:2022-04-27 07:12:32

A. python 怎麼在arcgis里用

方法1:互動式命令

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

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

C. 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。然後可以分別對此數據執行計算。這些更改將反映在連接列中。

計算欄位示例

D. 關於arcgis的python腳本編程, shape文件出png圖片問題

1、點類型的轉柵格:

PointToRasterexample1(Python
window)


.

importarcpy
fromarcpyimportenv
env.workspace="c:/data"
arcpy.PointToRaster_conversion("ca_ozone_pts.shp","ELEVATION",
"c:/output/ca_elev","MAXIMUM","",2000)

PointToRasterexample2
(stand-alonescript)

.

#Name:PointToRaster_Ex_02.py
#Description:.
#Requirements:ArcInfo

#Importsystemmoles
importarcpy
fromarcpyimportenv

#Setenvironmentsettings
env.workspace="C:/data"

#Setlocalvariables
inFeatures="ca_ozone_pts.shp"
valField="ELEVATION"
outRaster="c:/output/ca_elev02"
assignmentType="MAXIMUM"
priorityField=""
cellSize=2000

#ExecutePointToRaster
arcpy.PointToRaster_conversion(inFeatures,valField,outRaster,
assignmentType,priorityField,cellSize)



2、面類型的轉柵格:

PolygonToRasterexample1
(Pythonwindow)

.

importarcpy
fromarcpyimportenv
env.workspace="c:/data"
arcpy.PolygonToRaster_conversion("ca_counties.shp","NAME",
"c:/output/ca_counties.img",
"MAXIMUM_AREA","MALES",0.25)

PolygonToRasterexample2
(stand-alonescript)

.

#Name:PolygonToRaster_Ex_02.py
#Description:.
#Requirements:ArcInfo

#Importsystemmoles
importarcpy
fromarcpyimportenv

#Setenvironmentsettings
env.workspace="C:/data"

#Setlocalvariables
inFeatures="ca_counties.shp"
valField="NAME"
outRaster="c:/output/ca_counties"
assignmentType="MAXIMUM_AREA"
priorityField="MALES"
cellSize=0.5

#ExecutePolygonToRaster
arcpy.PolygonToRaster_conversion(inFeatures,valField,outRaster,
assignmentType,priorityField,cellSize)


3、線類型轉柵格

PolylineToRasterexample1
(Pythonwindow)

.

importarcpy
fromarcpyimportenv
env.workspace="c:/data"
arcpy.PolylineToRaster_conversion("roads.shp","CLASS","c:/output/roads.img",
"MAXIMUM_COMBINED_LENGTH","LENGTH",30)

PolylineToRasterexample2
(stand-alonescript)

.

#Name:PolylineToRaster_Ex_02.py
#Description:.
#Requirements:ArcInfo

#Importsystemmoles
importarcpy
fromarcpyimportenv

#Setenvironmentsettings
env.workspace="C:/data"

#Setlocalvariables
inFeatures="roads.shp"
valField="CLASS"
outRaster="c:/output/roads.tif"
assignmentType="MAXIMUM_COMBINED_LENGTH"
priorityField="LENGTH"
cellSize=30

#ExecutePolylineToRaster
arcpy.PolylineToRaster_conversion(inFeatures,valField,outRaster,
assignmentType,priorityField,cellSize)

E. arcmap中在哪寫python腳本

Python window

就在標准工具條裡面
在arctoolbox 工具後面

F. arcgis中打開python後,如何編程

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

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

G. arcgis欄位計算器編寫Python程序

報錯的原因至少兩個:1、定義的函數里的變數不能用具體的欄位名「!因子級別!」,應該使用X、Y之類的變數名;2、if語句里的等號應該使用「==」而不能用「=」
此外,在def 語句之後的語句都要有縮進(至少縮進一個空格),沒有縮進也會報語法錯誤

H. arcgis中,我在幫助里找到了需要的腳本,但是接下來怎麼操作腳本的文字要復制到哪裡又如何來運行

1. 把腳本貼到記事本中,保存為txt文件,然後將後綴改成py。
2. 用IDLE打開,修改參數,run -> run mole就可以了。

I. 怎麼用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腳本批量裁切柵格

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

設置密碼後,即可。

J. arcgis中怎麼寫python腳本

閱讀全文

與arcgis中怎麼寫python腳本文件相關的資料

熱點內容
二級加密圖 瀏覽:113
壓縮機異音影響製冷嗎 瀏覽:711
德斯蘭壓縮機 瀏覽:490
程序員太極拳視頻 瀏覽:531
網上購買加密鎖 瀏覽:825
安卓為什麼軟體要隱私 瀏覽:83
虛擬主機管理源碼 瀏覽:811
java圖形圖像 瀏覽:230
單片機輸出口電平 瀏覽:486
java配置資料庫連接 瀏覽:479
java多態的體現 瀏覽:554
java的split分隔符 瀏覽:128
跪著敲代碼的程序員 瀏覽:238
web和php有什麼區別 瀏覽:120
加密的電梯卡怎麼復制蘋果手機 瀏覽:218
warez壓縮 瀏覽:137
黑馬程序員培訓機構官網天津 瀏覽:904
mainjavasrc 瀏覽:59
如何買伺服器挖礦 瀏覽:292
php批量上傳文件夾 瀏覽:561