一、背景
溝壑密度是描述地面被水道切割破碎程度的一個指標。溝壑密度是氣候、地形、岩性、植被等因素綜合影響的反映。溝壑密度越大,地面越破碎,平均坡度增大,地表物質穩定性降低,且易形成地表徑流,土壤侵蝕加劇。因此,溝壑密度的測定,對於了解區域地形發育特征,水土流失監測、水土保持規划有着重要的意義。
溝壑密度也稱溝谷密度或溝道密度,指單位面積內溝壑的總長度。以公里/平方公里為單位。數學表達為
Ds為溝壑密度﹔>L為研究區域內的溝壑總長度(單位:公里);A為特定研究區域的面積(單位:平方公里)。
二、目的
掌握利用水文分析工具提取溝谷網絡的原理及方法。
三、要求
(1)利用水文分析工具提取研究區域的溝谷網絡。
(2)計算出該研究區域的溝壑密度。
四、數據
25m分辨率的DEM數據,區域面積約有59km²(\ChP11 \Ex3)。
五、模型構建器
六、ArcPy實現(代碼只展示河谷網絡的提取)
# -*- coding: utf-8 -*-
import arcpy
from arcpy.sa import *
print "輸入示例:D:\桌面\Chp11\Ex3"
arcpy.env.workspace = raw_input("請輸入數據所在的文件絕對路徑:").decode('utf-8') # 工作空間
a = Fill('dem') # 填窪
b = FlowDirection(a) # 流向
c = FlowAccumulation(b) # 流量
d = Test(c, "value>100") # 條件測試
e = Con(d, 1) # 條件函數
StreamToFeature(e, b, '河谷') # 柵格河網矢量化
注意:
下圖是模型構建器生成的表,它會自動生成幾何長度字段;
而ArcPy生成的表是不會自動生成幾何長度字段的;
所以,我們得自己添加幾何字段,注意這里已經把單位設置成了km。
七、結果
實驗結束啦 byebye~~