ArcGIS 下的水文分析


水文分析:根據DEM提取河流網絡,計算流水累積量、流向、根據指定的流域面積大小自動划分流域

 

水文分分析工具... 1

1. 數據基礎:無窪地的DEM.. 3

2. 關鍵步驟:流向分析... 4

3. 計算流水累積量... 5

4. 提取河流網絡... 6

5.流域分析... 9

6. 其它應用--降水分析(選做) 11

 

水文分分析工具

有兩種途徑使用水文分析功能:

(1)     通過Arctoolbox:水文分析工具位於[Spatial Analyst Tools]>>[Hydrology]之下

 

 

 

如果Hydrology 工具集沒有出現,可以選中某個工具箱后新建一個工具集[Hydrology],然后右鍵點新建的工具集,在出現的菜單中執行[添加]>>[工具]

 

會出現如右圖所示的對話框,將需要的水文分析工具添加到上面新建的工具集中。

 

 

(2)     另一種方法是添加[Hydrology]工具欄到ArcMap中。

在ArcMap中執行菜單命令:[工具]>>[定制] 命令

 

點擊 [從文件添加]按鈕

 

找到esrihydrology_v2.dll 文件

注意:這個文件通常是在ArcGIS的安裝路徑下,默認的情況是[C:\Program Files\ArcGIS\DeveloperKit\samples\SpatialAnalyst\HydrologicModeling\Visual_Basic]

 

[Hydrology Modeling]工具條就被加載到ArcMap,在其前面的檢查框上打上勾,如下圖所示。

[Hydrology Modeling]工具條就可以顯示在ArcMap中

 

 

注意:以下的練習基於 Hydrology Modeling 工具

1. 數據基礎:無窪地的DEM

在ArcMap中加載 DEM數據,執行工具條 [Hydrology Modeling]中的菜單命令 [ Hydrology ]>>[ Fill Sinks],在出現的對話框中將 [Input Surface]參數指定為 “DEM”

 

確定后得到無窪地的DEM數據:[ Filled Sink1 ]

 

2. 關鍵步驟:流向分析

在上一步的基礎上進行,執行工具條 [Hydrology Modeling]中的菜單命令 [ Hydrology ]>>[ Flow Direction ],在出現的對話框中將 [Input Surface]參數指定為 “Filled Sink1”

 

確定后得到流向柵格 [ Flow Direction1],了解流向柵格單元的數值表示的含義是什么

 

3. 計算流水累積量

在上一步的基礎上進行,執行工具條 [Hydrology Modeling]中的菜單命令 [ Hydrology ]>>[ Flow Accumulation ],在出現的對話框中將 [Direction Raster]參數指定為 “Flow Direction1”

 

確定后得到流水累積量柵格[Flow Accumulation1]

 

4. 提取河流網絡

(1)     提取河流網絡柵格:

在上一步的基礎上進行,打開Arctoolbox,運行工具[Spatial Analyst Tools]>>[Map Algebra]>>[單輸出地圖代數]

在 [地圖代數表達式]中輸入公式:con (Flow Accumulation1>800,1)

[輸出柵格]指定為:StreamNet

說明:通過此操作將流水累積量柵格[Flow Accumulation1]中柵格單元值(流水累積量)大於800的柵格賦值為1,從而得到河流網絡柵格[StreamNet]

1 setnull

2 con

3 pick up

這三個命令很有用。setnull,將柵格圖像中滿足條件的柵格值設置為null,即nodata,這樣很便於在柵格圖像中刪除不需要的部分。其對應Grid模塊命令為setnull,格式:outgrid = setnull <ingrid > 5, ingrid>,表示,如果ingrid》5,則變為nodata,否則返回為原值。

con表示條件,如果滿足條件,返回為指定值1,否者返回為指定值2,Grid命令:

outgrid = con < ingrid > 5, 10 ,100>,表示,如果ingrid值>5,則對應柵格值改為10,否者改為100。若100不指定,則返回為nodata。這里可以指定多個條件。

pick up,我還沒看到呢。。。。

ps。發現toolbox有個特點,右擊命令的話可以批處理哦。

 

得到的的河流網絡柵格:StreamNet

 

關閉除[Streamnet]之外的其它圖層

(2)     提取河流網絡矢量數據

在上一步的基礎上進行,執行工具條 [Hydrology Modeling]中的菜單命令 [ Hydrology ]>>[ Stream Network As Feature ],在出現的對話框中將 [Direction Raster]參數指定為 “Flow Direction1”,[Accumulation Raster]參數指定為 “Flow Accumulation1”,[Minimum Number of Cells for a Stream]參數指定為 1000

 

確定后得到河流網絡矢量數據

 

(3)     平滑處理河流網絡

打開[編輯器]工具欄,執行工具欄中的命令[編輯器]>>[開始編輯],確保目標圖層為河流網絡圖層[Shape1],

通過打開[Shape1屬性表,並選擇屬性表的所有行選擇圖層[Shape1]中的所有要素,也可以通過要素選擇按鈕 選擇圖層中所有要素

執行[編輯器]工具欄中的命令[編輯器]>>[更多的編輯工具]>>[高級編輯]打開工具條:[高級編輯],點擊其上的[平滑]按鈕(下圖中前頭所指):

 

在[平滑]處理對話框中輸入參數[允許最大偏移]:3

得到平滑后的河流網絡矢量圖層,執行命令: [編輯器]>>[停止編輯],保存所做修改。

 

比較平滑處理后的數據與沒有進行處理過的數據

5.流域分析

在上一步的基礎上進行,執行工具條 [Hydrology Modeling]中的菜單命令 [ Hydrology ]>>[ Watershed ],在出現的對話框中將 [Direction Raster]參數指定為 “Flow Direction1”,[Accumulation Raster]參數指定為 “Flow Accumulation1”,[Minimum Number of Cells for a Stream]參數指定為 2000

 

確定后得到流域柵格 [Watershed1]

 

打開[空間分析] 工具欄,執行命令:[空間分析]>>[轉換]>>[柵格到要素] 將流域柵格轉換成為矢量圖層,按下圖所示指定參數:

 

得到矢量數據:[WaterShed.shp]

 

設置圖層[Watershed]屬性[符號]后得到類似上圖的效果

重復以上操作步驟並將[Minimum Number of Cells for a Stream]參數指定為 10000,看看結果是否有所不同。

6. 其它應用--降水分析(選做)

執行命令 [Hydrology]>>[Interactive Properties]

 

選中“Rain Drop”按鈕,(如下圖紅色前頭所指),在DEM上任意位置點擊(表示這里有降雨),則顯示一條路徑表示此處的降水的最終流向

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM