亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Python的ArcGIS批量地圖輸出方法

        2016-10-21 16:04:43劉桂英
        科技與企業(yè) 2016年9期
        關(guān)鍵詞:方法

        劉桂英

        【摘要】在ArcGIS地理信息系統(tǒng)開(kāi)發(fā)過(guò)程中,經(jīng)常需要將地圖按照一定的屬性和比例要求導(dǎo)出為相應(yīng)圖片。一般情況下我們會(huì)選擇直接使用ArcGIS工具箱直接導(dǎo)出圖片,但當(dāng)我們需要導(dǎo)出多張圖片時(shí),就顯得非常麻煩,本文介紹了一種解決反復(fù)勞動(dòng)的簡(jiǎn)單方法,使用Python制作批量地圖輸出小工具。

        【關(guān)鍵詞】Python;arcgis;arcpy;地圖輸出

        引言

        在基于ArcGIS的地理信息系統(tǒng)的開(kāi)發(fā)中,經(jīng)常需要將地圖按照一定的屬性和比例要求導(dǎo)出為相應(yīng)圖片。一般情況下我們會(huì)選擇直接使用ArcGIS工具箱直接導(dǎo)出圖片,但當(dāng)我們需要導(dǎo)出多張圖片時(shí),就顯得非常麻煩。然而ArcGIS提供了多種編程接口和類庫(kù),可以讓我們方便地自己定制各種2次開(kāi)發(fā)地理信息系統(tǒng)和工具。ArcGIS有提供C#,JAVA等傳統(tǒng)語(yǔ)言的AO接口,還有提供VB和Python這類解析性語(yǔ)言的接口。AO接口過(guò)于復(fù)雜,適用于用來(lái)二次開(kāi)發(fā)GIS系統(tǒng),而用來(lái)制作小型輔助工具有點(diǎn)大材小用;VB將近淘汰邊緣,而且新版本ArcGIS默認(rèn)不支持,需要安裝;所以我們選擇了Python作為小工具制作的輔助語(yǔ)言。

        Python是一種不受局限的、跨平臺(tái)的開(kāi)源編程,屬于解析性腳本語(yǔ)言。Python具有腳本語(yǔ)言中最豐富和最強(qiáng)大的類庫(kù),而且能把其他語(yǔ)言制作的各種模塊輕松地聯(lián)結(jié)在一起。Python非常簡(jiǎn)單易學(xué),開(kāi)發(fā)效率極高。

        1.arcpy簡(jiǎn)介

        arcpy是ArcGIS的一個(gè)Python包,包含對(duì)地圖操作和地圖代數(shù)的支持,支持編輯處理和幾何操作。Python已經(jīng)與ArcGIS高度集成,方便實(shí)現(xiàn)GIS的各種處理流程。

        2.實(shí)現(xiàn)方法

        實(shí)現(xiàn)將mxd文件批量地圖輸出需要做兩次遍歷才能把所有地圖輸出。如圖1所示,首先遍歷mxd文件目錄中的mxd文件,然后將每個(gè)文件中所包含的圖層遍歷出來(lái)。獲取每個(gè)圖層后,需要先將圖層開(kāi)啟顯示,然后調(diào)用arcpy庫(kù)的方法將圖層輸出成JPG文件,完成后關(guān)閉該圖層,最后遍歷完畢地圖也輸出完畢。

        2.1導(dǎo)入arcpy庫(kù)

        在Python中操作使用ArcGIS的功能,必須先導(dǎo)入ArcGIS提供的Python類庫(kù)arcpy。arcpy庫(kù)是ArcGIS產(chǎn)品自帶的,不需要額外安裝。導(dǎo)入方法是:

        import arcpy

        2.2遍歷子目錄

        在Python中,內(nèi)置了一個(gè)非常簡(jiǎn)單目錄遍歷方法os.walk()。該函數(shù)會(huì)返回一個(gè)三元tupple(dirpath, dirnames, filenames) ,其中第一個(gè)為起始路徑,第二個(gè)為起始路徑下的文件夾,第三個(gè)是起始路徑下的文件。然后利用for循環(huán)進(jìn)行遍歷。

        2.3圖層遍歷

        在地圖文檔(.mxd)中一般包含很多圖層,我們需要將每個(gè)圖層都輸出成JPG圖片,這樣就需要對(duì)圖層的遍歷。arcpy庫(kù)提供了一套完整的制圖模塊庫(kù)arcpy.mapping,該模塊庫(kù)主要是用于操作現(xiàn)有地圖文檔(.mxd)和圖層文件(.lyr)的內(nèi)容。遍歷圖層需要用到arcpy提供的一個(gè)方法arcpy.mapping.ListLayers(arcpy.mapping),該方法返回一個(gè)包含所有圖層對(duì)象的Python list,然后我們就可以用Python遍歷list的方法遍歷圖層。

        2.4輸出JPG格式的地圖

        arcpy庫(kù)還提供自動(dòng)執(zhí)行導(dǎo)出和打印的函數(shù)。這里就是使用了一個(gè)導(dǎo)出JPG格式的函數(shù)ExportToJPEG。

        3.結(jié)束語(yǔ)

        本文介紹了一種利用Python對(duì)ArcGIS批量地圖輸出的方法,通過(guò)程序可以看到Python程序非常整合和簡(jiǎn)潔,合理利用Python和arcpy庫(kù)會(huì)對(duì)GIS開(kāi)發(fā)效率提高極大的幫助。

        參考文獻(xiàn)

        [1]ArcGIS10.1 help.

        [2]朱道強(qiáng),關(guān)海濤.Python在ArcGIS中的應(yīng)用 [J]. 測(cè)繪與空間地理信息, 2013, 36(7): 152-154.

        [3]邵保華,田學(xué)志.基于Python的Arcgis地理處理應(yīng)用研究 [J]. 林業(yè)勘查設(shè)計(jì), 2012, (2).

        基金項(xiàng)目

        湛江市科技攻關(guān)計(jì)劃項(xiàng)目

        基金編號(hào):2013B01145

        猜你喜歡
        方法
        學(xué)習(xí)方法
        可能是方法不對(duì)
        用對(duì)方法才能瘦
        Coco薇(2016年2期)2016-03-22 02:42:52
        四大方法 教你不再“坐以待病”!
        Coco薇(2015年1期)2015-08-13 02:47:34
        賺錢(qián)方法
        捕魚(yú)
        精品国产91久久久久久久a| 亚洲乱亚洲乱妇50p| 国产精品久久久| 亚洲国产另类久久久精品小说 | 欧美疯狂性xxxxxbbbbb| 九一成人AV无码一区二区三区| 亚洲发给我的在线视频| 欧美精品色婷婷五月综合| 亚洲美腿丝袜 欧美另类| 日本丰满妇人成熟免费中文字幕| 激情乱码一区二区三区| 国产精品视频自拍在线| 啦啦啦www播放日本观看| 人妻少妇偷人精品无码| 国产高清一区二区三区视频| 精品久久久少妇一区二区| 午夜福利啪啪片| 亚洲国产一区在线二区三区| 一区二区三区少妇熟女高潮| 亚洲综合极品美女av| 无码av免费一区二区三区试看| 人妻少妇不满足中文字幕| 中文字幕av一区二区三区诱惑| 免费a级毛片无码免费视频首页| 国产伦精品一区二区三区免费| 日本加勒比东京热日韩| 日本女同性恋一区二区三区网站 | 中文字幕久久精品一二三区| 欧美成人在线A免费观看| 久久亚洲一区二区三区四区五| 日韩av无码中文字幕| 成人无码一区二区三区网站| 亚洲AV无码一区二区水蜜桃| 涩涩鲁精品亚洲一区二区 | 亚洲亚洲亚洲亚洲亚洲天堂| 精品人妻av一区二区三区麻豆 | 中文无码免费在线| 精品人妻无码中文字幕在线| 国产一区二区三区经典| 国产精品日日做人人爱| 国产在线无码制服丝袜无码|