導航:首頁 > 編程語言 > arcgispython開發招聘

arcgispython開發招聘

發布時間:2022-05-12 17:06:25

1. 有人用python開發GIS用戶程序么

例子取自<<Learning Geospatial Analysis with Python>>

代碼由兩部分組成。第一部分是數據模型,第二部分是繪制數據(地圖渲染)。

一、數據模型:使用python內置的列表(list),用來存儲空間數據。

[python]view plain

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

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

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

3. 向精通ArcGIS——python腳本開發的同學請教

上段代碼運行出錯就是因為程序認為No是個字元串啊,把No直接改成1運行沒有問題 Traceback (most recent call last): File "C:\Documents and Settings\Administrator\桌面\a.py", line 18, in select("XYSheet1.shp","XYSheet1_Select1.shp","\"礦區編號\" =No") File "C:\Documents and Settings\Administrator\桌面\a.py", line 16, in select arcpy.Select_analysis(in_features, out_feature_class, where_clause) File "E:\ArcGIS\Desktop10.0\arcpy\arcpy\analysis.py", line 88, in Select raise eExecuteError: ERROR 999999: 執行函數時出錯。指定了不存在的列。指定了不存在的列。執行(Select)失敗。

4. 有沒有吧友有《面向arcgis的python腳本編程》的pdf

鏈接:https://pan..com/s/1jJSF4Ce

密碼:kn4w

Python作為一種高級程序設計語言,憑借其簡潔、易讀及可擴展性日漸成為程序設計領域備受推崇的語言。使用Python作為ArcGIS的腳本語言將大大提升ArcGIS數據處理的效率,更好地實現ArcGIS內部的任務自動化。

《面向ArcGIS的Python腳本編程》是一本專門針對ArcGIS編程的Python參考書,以基礎理論結合GIS開發實例的方式,詳細介紹了Python在ArcGIS開發中的基本應用和相關技巧,全書分為4個部分。第一部分主要介紹ArcGISforDesktop中地理處理的基本原理以及Python語言的基礎知識;第二部分主要介紹如何編寫一個處理空間數據的腳本;第三部分主要介紹一系列具體的操作,例如編寫制圖腳本、調試和錯誤處理以及創建Python類和函數;第四部分主要介紹如何將腳本創建成一個工具並與其他人共享。每一章都附帶相應的練習內容,幫助讀者在學習和練習之間得到更多的實踐。

《面向ArcGIS的Python腳本編程》內容結構清晰,示例完整,不僅適合於從事GIS開發的專業人士,而且適合那些有興趣接觸或從事Python編程的讀者。

目錄

第一部分Python和地理處理的相關概念

第1章Python簡介

第2章ArcGIS中的地理處理

第3章Python窗口

第4章Python基礎

第二部分編寫地理處理腳本

第5章使用Python進行地理處理

第6章訪問空間數據

第7章處理空間數據

第8章處理幾何圖形

第9章使用柵格數據

第三部分執行地理處理任務

第10章制圖腳本

第11章程序調試與錯誤處理

第12章創建Python類和函數

第四部分創建並使用腳本工具

第13章創建自定義工具

第14章共享腳本工具

5. Arcgis Engine二次開發用python可以嗎

1.自定義工具箱是什麼
就像名字一樣,自定義工具箱是由個人創建的工具箱,就像下面這樣,可以理解成一個 .tbx 後綴的壓縮包,每一個工具箱中都可以添加多個工具集、腳本工具甚至模型構建器工具。
一大堆工具箱
1.1如何添加自定義工具箱(熟悉可跳過)
第一步:右鍵點擊 ArcToolbox -> 添加工具箱
第二步:在打開的添加工具箱窗口中選中需要添加的工具,然後點擊右下角的打開即可。
添加工具箱到 Arcmap
1.2如何創建自定義工具箱
點擊右上角的紅色工具箱符號,可以新建並重命名一個工具箱。
我們這里新創建了一個海怪工具箱,用於之後的教程演示。
新建工具箱
1.3添加一個腳本工具
新創建的工具箱就像一個大箱子,箱子呢是用來裝工具的,你可以直接在工具箱中右鍵,然後點擊添加,再點擊腳本,進而創建一個腳本工具;
亦或是右鍵,點擊新建,再點擊工具集,創建一個可以自定義名稱的工具集,然後在工具集里新建一個腳本工具。
這里添加的腳本工具只是一個空殼,我們後面會繼續完善。
新建的工具箱位於 ../Chapter7/海怪工具箱.tbx。
2.工具箱的封裝
工具箱由三部分組成,其中有兩部分需要我們來控制:
一是輸入界面:確定工具箱輸入界面的參數定義和設置;

二是 Python 源代碼:功能的實現,為 .py 後綴的腳本文件;
三是對參數行為提供額外控制的可選驗證代碼,其位於工具箱中(這部分自帶,基本上不用修改)。
所以下面的重點就是輸入界面和 Python 源代碼。
2.1工具箱輸入界面

工具箱輸入界面,或者說圖形交互界面(GUI),就像下面的幾張圖一樣,從該界面我們可以控制工具的行為,自定義輸入界面然後配合 Python 腳本,可以實現多種客制化的功能。
簡單來說,你可以認為輸入界面是依託於 Arcmap 的「前端」,腳本代碼就是負責運行的「後端」。

導入導出工具:

為方便演示,製作一個非常簡單的工具箱,它的功能呢就是把輸入的要素類(資料庫或者 shp )再導出來而已,是完全沒有用的導入導出功能啦,不過作為演示還是非常不錯的。
製作完成後的導入導出工具的界面
第一步:
在工具箱中,右鍵點擊添加,再點擊腳本,然後修改名稱,修改成你想要的名字,勾選存儲相對路徑名,然後點擊下一頁。
修改名稱
第二步:
然後添加腳本文件,添加該腳本文件 ../Chapter7/toolscript/input_and_output.py,讀者可以在最後的下載包中找到該文件。
然後點擊下一頁。
鏈接python腳本
第三步:
控制用戶交互界面。ArcGIS 在這里內置了一整套簡單但是實用的圖形控制項,比如輸入菜單、下拉框、多選框、單選等,藉由這些圖形控制項我們可以控制腳本工具的圖形交互界面。
我們這里使用的腳本功能非常簡單,上面也有說到:輸入一個矢量要素類,不做任何處理,然後輸出一個矢量要素類。
為了匹配這個腳本,我們需要設置一個輸入圖層的控制項,同時為了能順利的輸出,也需要一個輸出圖層的控制項,注意一個是輸入一個是輸出。
從下圖可以看到,左邊(左邊的橙色框)是顯示名稱,其中輸入輸出控制項的名稱以及輸入控制項的名稱,這里命名為輸入要素和輸出要素;然後在右邊(右邊的橙色框)的數據類型下拉框中,我們選擇要素圖層,這里只能做選擇,不能任意輸入。
設置名稱和數據類型
那麼輸入輸出是如何區分的呢?
選中輸入要素(變成藍色),然後可以看到下方(下方橙色框)的參數屬性設置選項卡,這里可以對參數進行調整。

參數選項
① 類型:有三種,一般只會用到 Required 和 Optional,表示必須和可選,用於控制參數是否可以忽略不填;
② 方向: 兩種,Input 和 Output,表示輸入和輸出,大部分情況都是使用 Input 來獲得參數,Output 用於獲得最後的成果數據,像是矢量、柵格或者圖表;
③ 多值:Yes 或者 No,用於輸入多個相同類型的數據,工具打開後就是下面這樣,在輸入要素中可輸入多個要素類;
④ 默認:設置一個控制項的默認值,直接輸入即可。可配合多值一同使用,使用 ; (英文的分號)分開,
結果如下,可以看到一打開該工具就已經填充上了預設的多個默認值(報錯是因為數據類型不是要素圖層);
⑤ 環境:工具箱的環境設置,比如掩膜、容差范圍、默認資料庫位置等,一般不預先設置;
⑥ 過濾器:選擇文件類型可以在選擇文件時只顯示特定格式的文件;
⑦ 獲取自:指定數據的獲取源。這是個什麼意思呢?比如我們想要獲取圖層A的某個欄位,獲取源就是圖層A。
以下面這種圖作為例子,新增名為欄位的控制項(上方的橙色框),數據類型也是欄位,然後參數屬性中獲取自選擇輸入要素(下方橙色框)。
設置欄位控制項
點擊完成後,打開腳本工具。在輸入要素框中選擇一個圖層,然後再點擊獲取欄位,如下就可以選擇圖層中的欄位了。
獲取圖層的欄位
⑧ 符號系統:在最下面還有一個符號系統,通常只能作用於輸出的矢量圖層(方向:Output),可為輸出圖層指定設置好的 lyr 文件樣式。
設置符號系統
第四步:
點擊右下方的完成,那麼腳本工具的輸入界面就完成了。

2.2 Python 腳本

工具箱輸入界面和 Python 代碼要相互配合才行,工具箱界面中的輸入、輸出以及各種各樣的參數,在 Python 腳本文件中都得一一對應上,將輸入界面中的各個參數傳給 Python 腳本,這樣才能讓 Python 腳本按照預期的效果正常運行。
看上去有點麻煩,但實際上 arcpy 中提供了現成的函數就可以直接獲得參數。
①參數對接(獲取)

至於如何對接參數,我們使用剛剛的那個腳本文件舉例:

../Chapter7/toolscript/input_and_output.py

# -*- coding:utf-8 -*-

import arcpy

#▶1◀

input_lyr = arcpy.GetParameterAsText(0)

output = arcpy.GetParameterAsText(1)
if __name__ == '__main__':

lyr = arcpy.mapping.Layer(input_lyr)
arcpy.CopyFeatures_management(lyr, output)
▶1◀:arcpy 提供了 GetParameterAsText(index) 函數,該函數根據輸入界面的排序號碼獲得指定的參數。比如 GetParameterAsText(0) 獲得的就是輸入圖層參數, GetParameterAsText(1) 獲得的就是第二個參數,也就是輸出圖層參數。
如果有更多參數,以此類推。
②參數對接中應該注意的情況
GetParameterAsText(index) 從輸入界面獲得的參數都會轉變成字元串,沒錯都是字元串。
如果你只是輸入輸出地址這種,那麼沒有問題,因為地址本來就是字元串,但是如果你設置了一個選擇長度范圍的長整型的控制項、亦或是某種布爾值選擇,最後輸入到 python 腳本這里都會變成字元串。
整數變成字元串,使用 int(str) 規避;
布爾型變成字元串,True 變成了 "True",False 變成了 "False",這樣就不能判斷真假了,需要寫一個判斷語句或者隨便你,方法很多;
還有就是一個輸入控制項多值的情況,所有值根據先後連接成一個字元串,中間由 、(英文分號)間隔,可以使用 split 函數分開;

6. arcgis 可以用python開發嗎

當然可以。 ArcGIS自帶了 Python 環境,一般使用不要嘗試用別的來代替它。 使用Python,可以完成很多數據處理、自動化制圖的任務。

7. Arcgis 下python編程

可以把路徑輸出到本地的記事本

8. python都能幹什麼

python主要可以做Web 和 Internet開發、科學計算和統計、桌面界面開發、軟體開發、後端開發等領域的工作。

Python是一種解釋型腳本語言。Python可以應用於眾多領域,如:數據分析、組件集成、網路服務、圖像處理、數值計算和科學計算等眾多領域。互聯網公司廣泛使用Python來做的事一般有:自動化運維、自動化測試、大數據分析、爬蟲、Web 等。

(8)arcgispython開發招聘擴展閱讀

python的主要優點:

簡單易學:Python是一種代表簡單主義思想的語言。閱讀一個良好的Python程序就感覺像是在讀英語一樣。它使你能夠專注於解決問題而不是去搞明白語言本身。因有極其簡單的說明文檔,Python極其容易上手。

運行速度快:Python 的底層是用 C 語言寫的,很多標准庫和第三方庫也都是用 C 寫的,運行速度非常快。

免費、開源資源:Python是FLOSS(自由/開放源碼軟體)之一。使用者可以自由地發布這個軟體的拷貝、閱讀它的源代碼、對它做改動、把它的一部分用於新的自由軟體中。FLOSS是基於一個團體分享知識的概念。

可擴展性:如果需要一段關鍵代碼運行得更快或者希望某些演算法不公開,可以部分程序用C或C++編寫,然後在Python程序中使用它們。

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

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

設置密碼後,即可。

10. 有哪些 GIS+Python 的開發經驗值得分享

python之於GIS與python之於IT類似
GISer採用python的原因也在於「人生苦短,我用python」
python在gis中的應用非常之廣
1. desktop GIS:
ArcGIS從版本10開始不再支持原來的VBA,而改用python
QGIS本身大部分的代碼特別是插件部分可以採用python進行開發
2. 地圖引擎
mapnik—基於C++引擎的頂級地圖引擎庫,和python結合比較緊密
mapfish—支持部分專題地圖在線製作
3. webgis
python+geodjango 是最常用也最龐大的後台框架

GISer使用python一定要充分發揮python語言的特性
如ArcGIS集成phthon是利用了python的腳本語言特性
後台webgis等服務,可以發揮python作為語言黏合劑的特性,充分利用已有的GIS演算法庫

閱讀全文

與arcgispython開發招聘相關的資料

熱點內容
手機號碼如何加密 瀏覽:424
沈陽程序員培訓學校 瀏覽:538
一般伺服器如何配置 瀏覽:895
圖片怎樣加密發郵件 瀏覽:619
萬虹電腦文件夾密碼忘記了怎麼辦 瀏覽:631
rc108單片機 瀏覽:867
戰雷如何改變伺服器 瀏覽:674
mactelnet命令 瀏覽:51
壓縮袋壓縮了拿出來 瀏覽:401
安卓手機相機怎麼設置許可權 瀏覽:121
美女程序員轉行做主播 瀏覽:671
辦理解壓房產 瀏覽:575
道路工程概論pdf 瀏覽:388
超棒數學速演算法大全 瀏覽:937
小米易語言登錄源碼 瀏覽:31
磚牆內加密鋼筋 瀏覽:992
鄉關何處pdf 瀏覽:84
小豬領贊小程序源碼 瀏覽:336
python曲線如何原路返回 瀏覽:431
pdf快速看圖破解版 瀏覽:294