【Arcgis】基于泰森多边形求流域面降水量
泰森多邊形(Thiessen Polygon)法
泰森多邊形又叫馮洛諾伊圖(Voronoi diagram),得名于Georgy Voronoi,是一組由連接兩鄰點(diǎn)線段的垂直平分線組成的連續(xù)多邊形。一個(gè)泰森多邊形內(nèi)的任一點(diǎn)到構(gòu)成該多邊形的控制點(diǎn)的距離小于到其他多邊形控制點(diǎn)的距離。
1.1 原理
在開(kāi)展流域水文分析時(shí),往往流域范圍僅有少量雨量站,為較為準(zhǔn)確地將雨量站點(diǎn)實(shí)際觀測(cè)的降雨量反應(yīng)到區(qū)域或子流域上,需要進(jìn)行數(shù)據(jù)的鄰近分析,而泰森多邊形方法被廣泛應(yīng)用與計(jì)算流域平均面雨量。
流域上各點(diǎn)的雨量用離該點(diǎn)最近雨量站的降雨量代表。用泰森多邊形法計(jì)算流域的平均降雨量,是以各雨量站之間連線的垂直平分線,把流域劃分為若干個(gè)多邊形,然后以各個(gè)多邊形的面積為權(quán)數(shù),計(jì)算各站雨量的加權(quán)平均值,并把它作為流域的平均降雨量,一般來(lái)說(shuō)結(jié)果比單純算術(shù)平均法更為精確。
泰森多邊形法特點(diǎn):
- 每個(gè)泰森多邊形內(nèi)僅含有一個(gè)離散點(diǎn)數(shù)據(jù)
- 泰森多邊形內(nèi)的點(diǎn)到相應(yīng)離散點(diǎn)的距離最近
- 位于泰森多邊形邊上的點(diǎn)到其兩邊的離散點(diǎn)的距離相等
面雨量計(jì)算方法:
- a.先計(jì)算每個(gè)泰森多形內(nèi)的平均雨量,就是該多邊形內(nèi)的雨量站雨量乘以權(quán)重,權(quán)重即該多邊形面積值除以流域面積。
- b.把所有多邊形內(nèi)的平均雨量相加,再除以多邊形個(gè)數(shù)即是結(jié)果。
2 操作步驟
1.首先,如下圖所示,在ArcMap中導(dǎo)入站點(diǎn).shp(含降雨量數(shù)據(jù))和流域邊界.shp。需要注意的是,二者均為shp矢量數(shù)據(jù)。
2.接下來(lái),利用ArcToolbox工具中的Create Thiessen Polygons工具(Toolboxes → Analysis Tools → Proximity → Create ThiessenPolygons)進(jìn)行泰森多邊形的創(chuàng)建。
點(diǎn)擊Create Thiessen Polygons彈出窗口后所做的參數(shù)設(shè)置如下圖所示,在Input Features中輸入RainfallStation數(shù)據(jù),在Output Features Class中自定義輸出路徑(一般選擇之前已經(jīng)定義好的默認(rèn)路徑),在Output Fields (optional)中選擇All(即輸出所有屬性字段)。
3.設(shè)置Create Thiessen Polygons里的Environments
輸入界面設(shè)置完成后進(jìn)行環(huán)境變量設(shè)置,選擇Create Thiessen Polygons窗口下面的【Environments】按鈕,進(jìn)入環(huán)境設(shè)置窗口,設(shè)置Output Coordinate System,選擇Same as Input,也可以選擇與untitled_poly保持一致的坐標(biāo)系,不過(guò)選擇與與untitled_poly保持一致的坐標(biāo)系很有可能生不成泰森多邊形,因此可以先選擇與輸入一致的坐標(biāo)系,后面需要修改坐標(biāo)系的時(shí)候再修改一下就可以了。
然后對(duì)Extent進(jìn)行設(shè)置,設(shè)置生成泰森多邊形的四周邊界,此處選擇Same as Layer untitled_poly,其余保持默認(rèn)。如圖所示:
以上需要設(shè)置的地方都設(shè)置完成后,點(diǎn)擊OK,在Create Thiessen Polygons窗口再點(diǎn)擊OK,則生成的泰森多邊形如圖所示:
【另】報(bào)錯(cuò)
ERROR:Input RainfallStation does not hace OIDs.
需要進(jìn)行一步操作,先給降水?dāng)?shù)據(jù)表添加object_ID字段!!!
4.現(xiàn)在生成的泰森多邊形是一個(gè)將untitled_poly流域包含在內(nèi)的大四邊形,不能直接用于untitled_poly流域的面雨量計(jì)算,因此需要按照untitled_poly流域的形狀對(duì)新生成的泰森多邊形數(shù)據(jù)進(jìn)行裁剪。
采用ArcToolbox工具中的Clip工具(Toolboxes → Analysis Tools → Extract → Clip)進(jìn)行裁剪,在彈出的窗口中如下圖進(jìn)行設(shè)置:單位選擇Meters
點(diǎn)擊OK后,裁剪后得到的圖如下圖所示:
5.接下來(lái)計(jì)算裁剪后生成的每一個(gè)多邊形的面積,打開(kāi)裁剪后的Rainfall_Station_CreateThies_Clip數(shù)據(jù)的屬性表,并添加Area字段,并計(jì)算面積。(添加面積字段方法:單擊Table Options → Add Field…,添加面積字段后,右擊Area字段,點(diǎn)擊Calculate Geometry…,然后按雨量站名稱類別顯示如下圖所示:
各子區(qū)域面積如下:
【另】出錯(cuò)
【另】出錯(cuò)長(zhǎng)精度
6.然后將屬性表中所有數(shù)據(jù)全部選中,右擊如圖所示位置屬性列表?xiàng)l件field——幾何計(jì)算——導(dǎo)出dbf。
點(diǎn)擊Copy Selected,粘貼到excel表格中進(jìn)行面積權(quán)重的計(jì)算,最后根據(jù)各雨量站點(diǎn)所測(cè)的降雨量進(jìn)行加權(quán)平均,就可以計(jì)算出untitled_poly流域的降雨量了。計(jì)算結(jié)果如圖所示:
另:利用MATLAB計(jì)算面降水量
成圖如下所示:
參考
1.CSDN博客-泰森多邊形的matlab實(shí)現(xiàn)
2.泰森多邊形計(jì)算流域面雨量
總結(jié)
以上是生活随笔為你收集整理的【Arcgis】基于泰森多边形求流域面降水量的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: HX711电子秤芯片使用记录
- 下一篇: windows使用linux命令行工具,