ArcGIS for Desktop入門教程_第七章_使用ArcGIS進行空間分析 - ArcGIS知乎-新一代ArcGIS問答社區

原文: ArcGIS for Desktop入門教程_第七章_使用ArcGIS進行空間分析 - ArcGIS知乎-新一代ArcGIS問答社區

1 使用ArcGIS進行空間分析
1.1 GIS分析基礎
GIS的六大功能是數據獲取、存儲、查詢、分析、表達、輸出。在前面的內容裏已經介紹了使用ArcGIS進行數據獲取、存儲、查詢、表達和輸出的過程,本章將介紹如何在ArcGIS中進行地理分析。分析是GIS的核心和靈魂,是GIS區別於通常的信息系統、CAD或者電子地圖系統的主要標誌之一。
GIS分析,就是研究數據的地理分佈模式以及地理要素之間的關係的過程。在大量的地理數據中,利用GIS軟件所提供的工具找出對咱們有用的信息,這就是一個地理分析的過程。GIS分析能夠用來觀察地理數據的空間模式和空間關係,分析結果會幫助人們集中精力作出全面的、最好的選擇或計劃。
GIS分析能解決的問題不少,包括基於空間關係的查詢(查找距離黃河1千米以內的城市)、緩衝區分析(計算某加油站若是發生事故對周圍地區的影響)、疊加分析、網絡分析(查找兩個地方之間的最短路徑)、空間統計分析(找出某個犯罪高發地區)。

1.2 用ArcGIS進行分析
ArcGIS爲GIS分析提供了不少工具和模塊,經常使用的地理分析功能都能實現。好比查詢功能能夠進行基於空間關係的查詢,編輯工具條和buffer工具能夠進行緩衝區分析,Analysis Tools工具箱能夠進行疊加分析,網絡分析擴展模塊能夠進行網絡分析,空間統計工具箱提供了空間統計分析的工具。在本章中,以一個選址分析做爲例子,來介紹ArcGIS中的地理分析過程。案例背景:在某地區計劃興建新的公路,但公路會影響某種受保護鳥類的棲息環境,所以在公路規劃中必須考慮此問題。本案例的目的在於從該地區找出適應此種鳥類棲息的地方,以供公路規劃部門參考,建設公路時能夠避開這些生態保護區。根據專家研究,適應此種鳥類生活的地方應符合如下要求:

· 植被類型是此種鳥喜好的食物;
· 坡度小於40度;
· 與公路有必定距離;
· 面積不能過小,要大於1089000平方英尺;
根據以上條件,就能夠找出最適合鳥兒生活的地方。案例數據包括:

· 該地區的公路數據。包括每條公路的位置和公路的影響距離;
· 植被類型數據;
· 坡度數據;

分析步驟以下:

1. 雙擊打開…\DATA\Analysis\生態區選擇.mxd地圖文檔,查看幾個圖層的數據。文檔中共有3個圖層,其中「主要道路」是該地區的主要道路圖,「植被類型」是植被類型分佈圖,「坡度小於40」是該地區坡度小於40度的區域。

2. 首先找出植被類型符合鳥類食物的區域。在植被類型圖層的屬性表中, VEG_TYPE是表示植被類型,HABITAT是說明該植被是否適宜當鳥類的食物,1爲適宜,0爲不適宜。所以這一步就是要選擇HABITAT=1的區域。

1) 點擊菜單欄上的Selection菜單,選擇Select By Attributes。打開基於屬性選擇的對話框。



2) 按照下圖設置Select By Attributes對話框,選擇目標圖層爲「植被類型」,選擇表達式爲HABITAT=1。設置好後點擊「OK」,即可看到部分多邊形被選中。



3) 在保持部分多邊形要素選中的狀態下,在內容列表中右鍵單擊「植被類型」圖層,在彈出菜單中選擇Selection—>Create Layers From Selected Features,用選中的要素建立一個新圖層。



生成的圖層名爲「植被類型selection」。不顯示「植被類型」圖層。在右邊的顯示區域能夠明顯看到符合植被類型條件的區域僅僅是一小部分。



3. 第3步是要在第2步的結果中選擇那些坡度小於40度的區域。這裏咱們使用Editor工具條中的Clip工具來完成。此工具可使用一個多邊形要素去切割其餘要素,切割時能夠選擇保留或丟棄相交部分,由於咱們的目的是找到兩個圖層裏的要素的公共部分,所以選擇保留相交部分。

1) 首先點擊工具欄上的調出Editor工具條,並選擇Editor工具條上的Editor下拉菜單中的Start Editing開始編輯會話。

2) 在內容列表右鍵單擊「坡度小於40」圖層,彈出菜單中選擇Open Attribute Table打開屬性表。在屬性表中可看到,此圖層中有7個多邊形要素。因爲Clip工具只能用一個多邊形要素去切割其它要素,所以先把這些要素合併成一個。

3) 點擊屬性表中的Options按鈕,在彈出菜單中選擇Select All,選中所有7個要素。



4) 而後點擊Editor工具條上Editor下拉菜單的Merge,在彈出對話框中選擇第一個要素,這時7個要素就合併成了一個。



5) 顯示「植被類型selection」和「坡度小於40」圖層,其餘圖層關閉顯示。用Editor工具條上的Edit Tool 選中「坡度小於40」圖層的惟一的要素,點擊Editor工具條上的Editor下拉菜單中的Clip,在彈出對話框中選擇 「Preserve the area that intersect(保留相交部分)」,就獲得了植被類型和坡度條件都符合要求的區域。



4. 第4步是在第3步的結果中排除距離道路過近的地方。

右鍵點擊內容列表中的「主要道路」圖層,在彈出菜單中選擇Open Attribute Table打開屬性表。在屬性表中看到,有個CLASS字段表示路的等級,Distance字段表示路的影響距離(即保護區應該遠離道路的距離)。



觀察發現,不一樣等級的道路,影響距離不一樣。其中CLASS=1的道路影響距離和其它3個等級不一樣。所以,在下面的操做中,咱們分別對CLASS=1的道路和CLASS=二、三、4的道路進行操做。下面以第一級爲例給出對每級道路的操做步驟。

1) 首先選擇所要操做的等級,打開屬性選擇對話框,設置以下。這樣就選中了全部CLASS等於1的道路。



在分析中的目的是要把這些受道路影響的區域從可選擇的區域中排除掉,可使用Editor工具條上的Clip工具。但使用Clip工具時,是用一個要素去切割其餘要素,所以,先把這些CLASS=1的道路要素合併成一個,再使用clip。

2) CLASS=1的道路要素都處於選中狀態,點擊Editor工具條上的Editor下拉菜單中的Merge,在彈出對話框中選擇第一個要素,點擊OK。



3) 顯示「植被類型selection」和「主要道路」這兩個圖層,點擊Editor工具條上的Editor下拉菜單中的Clip,在彈出對話框中選擇Discard the area that intersects(丟棄相交部分),在Buffer Distance中輸入1312,點擊OK,就把道路影響區域從知足植被類型和坡度的區域(即第3步的結果)中去掉了。



以上是CLASS=1的道路的操做步驟,完成後,對於CLASS=二、三、4的道路重複此過程。步驟和上面步驟同樣,不過在選擇道路的時候,選擇表達式應該爲「CLASS」=‘2’OR「CLASS」=‘3’OR「CLASS」=‘4’。另外緩衝區距離爲820。完成以上步驟後,關閉全部圖層,就能夠看到知足前3個條件的區域。

4) 因爲裁剪後的圖形可能有多要素的狀況,即一條屬性記錄對應多個圖形。這時候咱們能夠採用高級編輯工具條上的「拆分」工具 拆分圖形。高級編輯工具條在菜單欄的空白處單擊右鍵,選擇Advanced Editing。



5) 點擊Editor工具條上Editor下拉菜單中的Save Edits保存編輯,並點擊Stop Editing結束編輯狀態。

5. 在第4步的基礎上,要其中找出面積大於1089000平方英尺區域。這能夠經過基於屬性的選擇獲得。點擊菜單Selection > Select By Attributes。在打開的對話框中設置以下:



6. 到第5步爲止,已經獲得了知足4個條件的區域,最後能夠將這部分區域導出到一個新的要素類中去,這個要素類就是最終知足條件的結果。在保持第5步結果(即符合面積條件的區域被選中)的狀態下右鍵點擊「植被類型selection」圖層,在彈出菜單中點擊Data > Export Data。



在彈出的對話框中,設置新生成的要素類放置的路徑(能夠選擇生成Shapefile或者Geodatabase要素類),點擊OK後就生成了最終結果。





結果(疊加主要道路圖層)以下圖:



1.3 基於Geoprocesing進行地理分析
Geoprocessing即地理處理,是核心的GIS操做——從現有的或者提取出來的數據中建立新的空間數據。也就是說,GIS中除了地圖繪製、數據建立和編輯、數據庫方案管理和可視化外,幾乎全部的基本功能均可以規劃到Geoprocessing中。ArcGIS 10.4中有許多Geoprocessing工具(簡稱GP工具),幾乎包括了全部ArcGIS桌面的功能,其中包括不少分析工具。所以要進行地理分析,也能夠經過Geoprocessing進行,很是方便。

在ArcGIS的Geoprocessing框架下的一系列工具能夠經過不一樣的方式,從不一樣的位置調用。Geoprocessing框架中有三種經常使用環境:內置工具、環境工具和腳本工具。用戶能夠根據實際應用的須要來選擇合適的使用環境。對於不熟悉ArcGIS工具的用戶,最好使用內置工具,即對話框工具能讓用戶更明白每個工具以及參數的功能和意義。而模型工具以及腳本工具都具備對工具進行重用和組合的能力,比簡單的使用對話框工具能夠更有效的完成分析任務。除了一小部分工具之外,腳本是惟一能夠實現批處理操做的Geoprocessing環境,也就是說,腳本能夠同時處理多個輸入數據。

在使用Geoprocessing工具時,若是須要的話,要進行環境設置。環境設置包括不少在工具運行時可能都用到的一些設置,好比輸入輸出的路徑(文件夾或Geoprocessing)、輸出的座標系統、輸出範圍等等。

使用Geoprocessing工具最經常使用的方式是經過ArcToolbox窗口調用。在ArcMap或ArcCatalog中均可以經過點擊工具欄上的圖標 調出ArcToolbox窗口。



如上圖所示,ArcToolbox中,將相近用途的工具進行了歸類,並將它們分組存放。在ArcToolbox中,有不少工具箱、工具集和工具。工具箱是一個存放工具和工具集的容器。工具集則是一個存放工具和其它工具集的邏輯容器,就像ArcCatalog裏一個文件夾包括文件夾或地理數據同樣。工具即是執行特定Geoprocessing操做的單一實體。

要執行一個工具,直接在ArcToolbox窗口中雙擊此工具,就打開了工具的對話框。在對話框中,能夠點擊右下角的Show/Hide Help按鈕來切換顯示幫助。每一個工具都有須要填充的參數,其中必填參數前面會帶一個綠色的小圓點。填充好參數後,點擊OK,工具就會執行。



若是一個數據處理或分析的過程須要調用多個工具來完成的話,一個一個的打開工具太麻煩,並且流程也不清晰,這種狀況下能夠考慮使用模型工具ModelBuilder,即經過建立執行模型的方式來使用Geoprocessing工具。

ModelBuilder是ArcGIS中使用Geoprocessing的一種方式,能夠經過直接拖拽的方式把工具組織成完整的流程並執行,對於要使用多個工具的操做過程來講很是方便快捷,並且能夠獲得清晰生動的流程圖,有助於理解整個操做過程。

下面以本章開頭的生態區選擇分析爲例子,舉例說明此分析在ModelBuilder中如何實現。

1. 建立工具箱以及模型

模型是放在工具箱中的。調出ArcToolbox的時候,能夠看到在ArcToolbox窗口有不少系統工具箱。這些工具箱是系統提供的,裏面的工具也是固定的,沒法更改。若是要建立模型,就必須在自定義的工具箱中建立。所以在建立模型以前,首先要建立一個工具箱。在ArcMap右側的Catalog窗中找到實驗數據所在的文件夾(Analysis),右鍵點擊選擇New > Toolbox。



給新建的工具箱命名爲HabitatTool。



在新建的HabitatTool工具箱上右鍵單擊,彈出菜單中選擇New > Model,便新建一個模型。



這時會彈出ModelBuilder界面,選擇Model菜單下的Model Properties。



在Model Properties對話框裏是關於整個模型的一些設置。選擇General選項卡,在Name和Label中均輸入Habitat,點擊肯定。Name是模型的名稱,若是在Geoprocessing中使用到這個模型的時候,用name來引用;而Label是模型顯示在工具箱裏的顯示名稱。



而後點擊工具欄上的 保存模型。一個空的模型就建立完成了,如今能夠關閉ModelBuilder界面。此時在ArcToolbox窗口的Habitat工具箱下就能夠看到剛纔建立的Habitat模型了。



2. 從第2步開始,就是編輯模型的過程了。右鍵單擊Catalog窗口的Habitat模型,在彈出菜單中選擇Edit,打開ModelBuilder界面,開始編輯Habitat模型。

模型的組成元素主要有工具、數據、數值和鏈接器(Connect)。數據是指地理數據,包括輸入數據和輸出的派生數據;數值是指非地理數據,如某個常數;工具是指對輸入數據進行處理的操做,由黃色長方形表示;鏈接器(Connect)是一條表示過程順序的線條。數據元素和工具元素由此相連,鏈接器的箭頭指明過程的方向。另外,在ModelBuilder中,輸入數據通過工具處理獲得派生數據的這樣一個流程,稱爲過程(Process)。模型可繁可簡。最簡單的模型可能只有一個過程,但通常模型都是由多個過程組合而成。

工具的添加能夠直接從ArcToolbox窗口拖拽到ModelBuilder窗口來,地理數據的添加能夠直接從ArcCatalog拖拽。另外,也能夠用ModelBuilder界面工具欄中的Add Data 來添加。

首先建立選擇知足第一個條件——植被類型的過程。在ArcToolbox窗口點擊Analysis Tools工具箱打開,裏面有4個工具集,點擊打開Extract工具集,在此工具集中點擊Select工具。此時的工具是沒有填充顏色的,說明這個工具還不是一個能夠運行的狀態,每每是缺乏必填參數。



點擊 添加植被類型vegtype數據,添加後以下圖所示。



點擊 ModelBuilder 窗口裏工具欄上的鏈接器(connector)按鈕 ,先在數據vegtype 上單擊一下,而後在工具Select上單擊一下,就在二者之間添加了鏈接,選擇Input Feature,使得vegtype成爲Select工具的輸入參數。此時工具和派生數據都填充了顏色,代表工具已是一個能夠運行的狀態。



Select工具是用基於要素類屬性的表達式去選擇輸入數據中的某些要素,而後把選中的要素做爲派生數據輸出爲一個新的要素類。因此在此工具中還須要輸入選擇表達式。右鍵點擊(或雙擊)模型中的Select工具,在彈出菜單中選擇Open,打開此工具的對話框。



能夠在彈出的工具對話框中直接填寫其餘參數,此時能夠看到Input Feature這個參數已經有值,就是剛纔用鏈接器鏈接的vegtype。點擊Expression參數下的SQL圖標。



在彈出的Query Builder對話框中設置選擇表達式以下,點擊OK。針對第一個條件——植被類型的過程就建立好了。



3. 第3步建立針對第三個條件——公路影響來建立過程。用上面提到的拖拽方法添加Analysis Tools工具箱裏的Buffer工具。此工具能夠對輸入的要素類產生制定緩衝距離的緩衝區。



用第2步中的方法添加道路數據majorrds,用鏈接器鏈接道路數據和Buffer工具。

指定輸入數據後,就要肯定緩衝距離,即道路影響的距離。右鍵單擊Buffer工具,彈出菜單中選擇Open打開工具對話框。在Distance參數的選項中,選擇Field,即用字段值做緩衝距離,由於在道路要素類的屬性中有一個Distance字段表示每條路的影響距離,因此此處使用字段值來做爲緩衝距離。而後設定緩衝字段爲Distance,點擊OK。



設置完後模型以下圖。Buffer工具的派生數據爲道路影響的緩衝區。



4. 第4 步是要把第3 步的結果從第2步結果中去除,即找出知足植被條件又不在道路影響範圍內的區域。可使用Erase工具。這個工具備兩個輸入地理數據參數,一個是Input Features,一個是Erase features,工具的輸出結果要素類爲Input Features中不與Erase Features相交的部分(即相交部分被丟棄)。在這裏把植被數據設定爲Input Features,道路影響緩衝區數據做爲Erase Features。



往模型中添加Erase工具,而後用鏈接器依次將vegtype_select和majorrds_Buffer和Erase工具鏈接。

在鏈接vegtype_select時,選擇Input Features;在鏈接majorrds_Buffer時,選擇Erase Features。



鏈接後能夠右鍵單擊Erase工具打開工具對話框,查看Input Features和Erase Features兩個參數是否設置正確,若是不正確能夠修改。完成後以下圖。





5. 第5步是在第4步結果的基礎上再添加第2個條件,即在第4步結果裏找出坡度小於40度的區域。由於已經有了小於40度的區域數據,這個操做的實質就是找出小於40度的區域和和第4步結果區域中公共的部分。這裏使用Intersect工具來完成這個操做。



從ArcToolbox窗口添加Intersect工具到模型,添加小於40度的區域數據slopelt40。

用鏈接器分別將坡度數據及第4步的輸出結果與Intersect工具鏈接。Intersect工具備多個輸入要素類,輸出結果爲輸入要素類的公共部分。鏈接後模型以下圖。



還須要作一步圖形拆分的操做,從ArcToolbox窗口添加Multipart To Singlepart工具到模型。





6. 第6步是在第5步的基礎上再增長第4個條件,即面積必須大於1089000平方英尺。

用第1步中的方法添加Select工具,添加到模型後此工具顯示名稱爲Select(2),由於在同一個模型中已經有一個Select工具。用鏈接器鏈接第5步的結果和select(2)工具,而後右鍵單擊select(2)工具打開工具對話框,設置最終輸出要素類和選擇表達式以下:



7. 運行模型。點擊Model菜單下的Run Entire Model或點擊工具欄中的按鈕,運行模型。模型運行過程當中,各類狀態會有不一樣的顯示。例如運行完的結果顯示中增長灰色陰影,當前正在運行的工具顯示爲紅色。所有運行完成後,右鍵單擊結果選擇Add To Display,用來將結果數據添加到地圖文檔中進行顯示。模型運行完後查看結果Result,與7.2中的結果一致。



練習數據下載:連接: http://pan.baidu.com/s/1i4FuY9n 密碼: sk6y


本入門教程各章節鏈接:
ArcGIS for Desktop入門教程_第一章_引言: http://zhihu.esrichina.com.cn/?/article/524
ArcGIS for Desktop入門教程_第二章_Desktop簡介: http://zhihu.esrichina.com.cn/?/article/525
ArcGIS for Desktop入門教程_第三章_Desktop軟件安裝: http://zhihu.esrichina.com.cn/?/article/526
ArcGIS for Desktop入門教程_第四章_入門案例分析: http://zhihu.esrichina.com.cn/?/article/527
ArcGIS for Desktop入門教程_第五章_ArcCatalog使用: http://zhihu.esrichina.com.cn/?/article/528
ArcGIS for Desktop入門教程_第六章_用ArcMap製做地圖: http://zhihu.esrichina.com.cn/?/article/529
ArcGIS for Desktop入門教程_第七章_使用ArcGIS進行空間分析: http://zhihu.esrichina.com.cn/?/article/530
ArcGIS for Desktop入門教程_第八章_Desktop學習資源 : http://zhihu.esrichina.com.cn/?/article/531  
相關文章
相關標籤/搜索