999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于ArcPy的矢量數(shù)據(jù)批處理方法研究

2017-08-24 14:15:28曹斌
科技創(chuàng)新與應(yīng)用 2017年21期
關(guān)鍵詞:數(shù)據(jù)處理

曹斌

摘 要:文章以地形測量成果的數(shù)據(jù)處理為例,探討了利用ArcPy進行矢量數(shù)據(jù)批處理的方法,完成了數(shù)據(jù)分層、屬性信息修改、數(shù)據(jù)合并、數(shù)據(jù)檢查等多個操作,并實現(xiàn)了上述操作的批量自動化處理,為今后進行矢量數(shù)據(jù)批處理提供了一套行之有效的解決方案。

關(guān)鍵詞:Python;ArcPy;地理處理;空間數(shù)據(jù)

中圖分類號:P413 文獻標志碼:A 文章編號:2095-2945(2017)21-0090-02

1 概述

地理處理是GIS的一個重要組成部分,從本質(zhì)上來說地理處理就是對空間數(shù)據(jù)的處理,也就是空間分析。ArcGIS提供了眾多地理處理工具,但這些工具一般都是對某一數(shù)據(jù)集執(zhí)行單一操作。但在實際項目中,常常需要對空間數(shù)據(jù)進行如投影變換、字段編輯、數(shù)據(jù)轉(zhuǎn)換等多種操作的批量處理,這需要數(shù)據(jù)處理人員進行大量重復(fù)性手動操作,既增加了工作量,又容易出錯,非常不利于提高數(shù)據(jù)處理效率。

ArcGIS 9.0社區(qū)中引入了Python,使用Python和ArcPy站點包,可以開發(fā)出大量用于處理地理數(shù)據(jù)的實用程序,能夠?qū)崿F(xiàn)空間數(shù)據(jù)的批量自動化處理。本文以地形測量成果的數(shù)據(jù)處理為例,探討了ArcPy在矢量數(shù)據(jù)批處理中的應(yīng)用。

2 ArcPy簡介

Python是由Guido van Rossum在1991年推出的一種不受局限、跨平臺的開源編程語言,由于Python處理速度快、功能強大且具有廣泛的認可度,ESRI選擇它作為腳本語言嵌入ArcGIS中。Python最早集成于ArcGIS 9.0,并作為地理處理腳本語言得以不斷發(fā)展,到ArcGIS 10采用了ArcPy。ArcPy是一個原生的Python站點包,它涵蓋并進一步加強了ArcGIS 9.2/9.3中所采用的arcgisscripting模塊的功能,為用戶提供了使用Python語言操作所有地理處理工具的入口,并提供了多種有用的函數(shù)和類,以用于處理和詢問GIS數(shù)據(jù)。

ArcPy的使用方法可歸納為以下三種:

(1)在命令行窗口中使用ArcPy

安裝ArcGIS之后將自動安裝相應(yīng)的Python安裝包,運行Python IDLE,即打開一個命令窗口,輸入“import arcpy”,就可以使用ArcPy提供的類與函數(shù)。另一種命令窗口內(nèi)嵌于ArcMap,點擊ArcMap工具欄中的 圖標,將在ArcMap中打開命令行窗口,利用該窗口不僅可使用ArcPy,還提供關(guān)于ArcPy的幫助文檔,對初學(xué)者來說非常有幫助。

(2)在Python腳本文件中使用ArcPy

使用ArcPy最方便的方式是腳本文件,我們可以利用記事本或是Python IDLE創(chuàng)建或編輯腳本文件,腳本文件以.py結(jié)尾。在Python IDLE中打開腳本文件后,點擊Run->Run Module將運行腳本文件,并輸出相應(yīng)的提示信息。

(3)利用ArcPy創(chuàng)建地理處理工具

使用ArcPy的第三種方法是利用ArcPy創(chuàng)建地理處理工具,該工具將作為ArcCatalog中的自定義工具使用,其使用方法與ArcToolbox中工具的使用方法類似,它能夠以對話框的形式接受用戶的各種輸入?yún)?shù),并依據(jù)用戶設(shè)置的輸出參數(shù)展示結(jié)果。

3 ArcPy數(shù)據(jù)批處理實例

下面以地形測量成果的數(shù)據(jù)處理為例,給出基于ArcPy的數(shù)據(jù)批處理流程圖及其具體實現(xiàn)。

3.1 數(shù)據(jù)處理流程

首先按照1:1000比例尺地形圖的測繪要求對整個測區(qū)進行數(shù)字化地形修、實測,獲得高精度的地形數(shù)據(jù),選用EPS2008為工作軟件導(dǎo)出MDB格式的地形測量成果,依據(jù)編制定的地理要素分類及編碼規(guī)則對MDB數(shù)據(jù)進行批處理,最終獲得符合客戶要求的成果數(shù)據(jù)。

3.2 主要應(yīng)用函數(shù)

3.2.1 使用列表函數(shù)

在地形測量成果數(shù)據(jù)處理中,主要有兩個地方需要應(yīng)用到列表函數(shù):

(1)獲取所有待處理的地形成果文件

待處理的地形測量成果是以村為單位分批提交,所有文件均以各村的數(shù)字編碼命名。要對上述數(shù)據(jù)進行處理,首先要遍歷獲取當前工作空間中的所有待處理的personal geodatabase文件,這里需要使用列表函數(shù)ListWorkspaces。函數(shù)ListWorkspaces中參數(shù)Access表示返回工作目錄下的所有personal geodatabase,若要返回工作目錄下的所有file geodatabase則需要將參數(shù)設(shè)置為FileGDB。

(2)遍歷數(shù)據(jù)庫文件中的特征類

上述personal geodatabase文件中包含若干特征類,這里我們同樣需要使用列表函數(shù)獲取數(shù)據(jù)庫文件中所有的特征類,并依據(jù)地理要素分類及編碼規(guī)則,對每個特征類執(zhí)行相應(yīng)的轉(zhuǎn)換操作。

3.2.2 創(chuàng)建模板文件

依據(jù)技術(shù)設(shè)計中要素分類及編碼規(guī)則創(chuàng)建模板文件,共涉及房屋、圍墻、道路、水系等15項地物大類,每個地物大類又分為若干小類,如房屋就包括建成房屋、簡易房屋、棚房、廊房4個小類,共計60項地物小類。

3.2.3 使用游標訪問數(shù)據(jù)

在進行上述數(shù)據(jù)處理過程中最重要的一個步驟就是依據(jù)地理要素分類及編碼規(guī)則進行批量數(shù)據(jù)讀寫,這里就需要使用游標訪問數(shù)據(jù)。

游標是一種數(shù)據(jù)訪問對象,可用以在表中迭代一組行,或向表中插入新行。游標有三種形式:搜索、插入、更新,對應(yīng)的函數(shù)分別為SearchCursor、InsertCursor、UpdateCursor。關(guān)于游標需要注意一點,插入和更新游標遵循由ArcGIS應(yīng)用程序設(shè)置的表鎖,訪問表或數(shù)據(jù)將應(yīng)用共享鎖,對表或數(shù)據(jù)集進行更改則采用排它鎖。當數(shù)據(jù)集上存在排它鎖時,將無法創(chuàng)建更新和插入游標。因此,在插入和更新操作完成后必須及時釋放鎖。

這里我們主要用到的是搜索游標和插入游標。使用搜索游標遍歷原始數(shù)據(jù)中的所有記錄,依據(jù)一定的規(guī)則,向模板文件中插入新記錄。這里還是以對道路對象的處理為例,說明如何使用游標訪問數(shù)據(jù)。道路對象的原始數(shù)據(jù)存儲于MDB文件的Road_Polygon_A特征類中,模板文件為Road_A.shp。

3.2.4 使用疊加分析工具集

疊加分析是用于解決“什么在什么上?”這一基本GIS問題的分析方法,依據(jù)處理的數(shù)據(jù)類型,疊加分析可分為矢量疊加和柵格疊加。其中,矢量疊加工具包括擦除、標識、相交、交集取反、聯(lián)合、更新。

在本案例中,按要求必須采集地理要素的邊界線并構(gòu)面,且面狀地物之間不能存在疊加覆蓋的情況,這就要求我們對所有面狀特征類進行空間關(guān)系檢查。利用疊加分析工具集中的相交工具可以快速實現(xiàn)。

對建成房屋(Building_A.shp)和其他用地(LandEx_A.shp)使用相交工具,將運算結(jié)果另存為Building_LandEx.shp文件,輸入數(shù)據(jù)和輸出結(jié)果如圖1所示。

從上述輸出結(jié)果不難發(fā)現(xiàn),建成房屋和其他用地存在明顯的相互覆蓋的情況,這說明在進行面狀要素構(gòu)面時存在問題,應(yīng)及時更正。

3.3 批處理成果

地形測量數(shù)據(jù)批處理的成果包括矢量數(shù)據(jù)文件和成果報告。

4 結(jié)束語

本文以地形測量成果的數(shù)據(jù)處理為例,探討了ArcPy在矢量數(shù)據(jù)批處理中的應(yīng)用,完成了數(shù)據(jù)合并、批量數(shù)據(jù)轉(zhuǎn)換、矢量數(shù)據(jù)疊加分析等操作,并實現(xiàn)了上述操作的自動化處理。以往用編程方式完成上述數(shù)據(jù)處理任務(wù)時,主要采用ArcGIS Engine或是其他數(shù)據(jù)處理開發(fā)包實現(xiàn),其編程門檻相對較高,主要面向的是專業(yè)開發(fā)人員。實踐證明ArcPy顯著降低了編程的門檻,在開發(fā)地理處理工具和空間數(shù)據(jù)批量自動化處理應(yīng)用程序方面具有顯著優(yōu)勢,為今后開展相關(guān)工作提供了一種新的解決方案。

參考文獻:

[1]Eric Pimpler. Programming ArcGIS 10.1 with Python Cookbook [M].Birmingham: Packt, 2013.

[2]孫咸磊,許捍衛(wèi),李文博.ArcPy在長江河道水下空間數(shù)據(jù)批量處理中的應(yīng)用[J].測繪與空間地理信息,2015,38(2):97-99.

[3]余詠勝,彭艷麗,尹言軍,等.基于Arcpy的影像地圖自動處理技術(shù)研究[J].測繪通報,2015(3):82-85.

猜你喜歡
數(shù)據(jù)處理
驗證動量守恒定律實驗數(shù)據(jù)處理初探
認知診斷缺失數(shù)據(jù)處理方法的比較:零替換、多重插補與極大似然估計法*
ILWT-EEMD數(shù)據(jù)處理的ELM滾動軸承故障診斷
ADS-B數(shù)據(jù)處理中心的設(shè)計與實現(xiàn)
電子測試(2018年4期)2018-05-09 07:28:12
MATLAB在化學(xué)工程與工藝實驗數(shù)據(jù)處理中的應(yīng)用
基于希爾伯特- 黃變換的去噪法在外測數(shù)據(jù)處理中的應(yīng)用
大數(shù)據(jù)處理中基于熱感知的能源冷卻技術(shù)
計算機工程(2015年4期)2015-07-05 08:28:04
Matlab在密立根油滴實驗數(shù)據(jù)處理中的應(yīng)用
數(shù)據(jù)處理能力在求職中起關(guān)鍵作用
我國首個“突發(fā)事件基礎(chǔ)數(shù)據(jù)處理標準”發(fā)布
主站蜘蛛池模板: 狠狠做深爱婷婷综合一区| 欧美综合中文字幕久久| 久久精品国产电影| 人妻中文字幕无码久久一区| 久久精品中文字幕免费| 无码免费的亚洲视频| 亚洲天堂精品视频| 亚洲日本中文字幕乱码中文| 五月激情婷婷综合| 亚洲91在线精品| 婷婷综合亚洲| 久久黄色毛片| 亚洲香蕉伊综合在人在线| 亚洲男人的天堂久久香蕉网| 99视频有精品视频免费观看| 99精品国产自在现线观看| 一本大道香蕉久中文在线播放| 精品国产电影久久九九| 全免费a级毛片免费看不卡| 亚洲天堂成人在线观看| 亚洲中文字幕无码爆乳| 播五月综合| 高潮爽到爆的喷水女主播视频| 国产91九色在线播放| 久久精品人人做人人综合试看 | 热99re99首页精品亚洲五月天| 久久国产免费观看| 日本精品中文字幕在线不卡| 亚洲最大情网站在线观看| 国产青青草视频| 伊人久久大线影院首页| 国产亚洲美日韩AV中文字幕无码成人| h网站在线播放| 亚洲免费人成影院| 亚洲无线一二三四区男男| 精品无码国产一区二区三区AV| 国产无码精品在线播放| 国产欧美高清| 99精品在线视频观看| 欧美性天天| 国产主播一区二区三区| 最新日本中文字幕| 国产精品成人第一区| 国产精品v欧美| 激情国产精品一区| 久久99蜜桃精品久久久久小说| 国产剧情国内精品原创| 国产精品亚洲专区一区| 国产美女在线免费观看| 在线无码私拍| 在线亚洲精品自拍| 国产福利一区二区在线观看| 国产女人18水真多毛片18精品 | 熟妇无码人妻| 久久综合AV免费观看| 免费Aⅴ片在线观看蜜芽Tⅴ | 成年片色大黄全免费网站久久| 免费一级大毛片a一观看不卡| 日韩午夜福利在线观看| 亚洲成年网站在线观看| 色婷婷视频在线| 国产日韩精品欧美一区喷| 国产欧美综合在线观看第七页| 最新精品久久精品| 91丝袜乱伦| 草草影院国产第一页| 精品国产一区二区三区在线观看| 精品91视频| 一级做a爰片久久免费| 丰满人妻被猛烈进入无码| 日本久久网站| 亚洲天堂视频在线播放| 亚洲成A人V欧美综合天堂| 精品国产自在在线在线观看| 国产区在线看| 免费观看男人免费桶女人视频| 欧美亚洲国产日韩电影在线| 国产成人凹凸视频在线| a欧美在线| 4虎影视国产在线观看精品| 亚洲三级a| 成人在线亚洲|