王瀟瀟
(山西省水文水資源勘測局 山西太原030001)
降水量等值線圖的繪制對山西省每年的資料整編作用很大,通過勾繪合理的降水量等值線圖可發(fā)現(xiàn)各雨量站間的降水量是漸變的,是有一定規(guī)律可循的,若某雨量站的降水量特大或特小,與四周各站不是漸變關(guān)系者,則要進行檢查。傳統(tǒng)的繪制降水量等值線圖需要經(jīng)驗豐富的人員根據(jù)地形等多種因素,人工判斷描繪,不僅耗時長,而且容易出錯。筆者針對這一問題,研究發(fā)現(xiàn)Surfer和Mapinfo的結(jié)合可以快速實現(xiàn)降水量等值線圖的繪制,與傳統(tǒng)手工繪圖對照后,誤差極小,適合于日常工作。
雨量等值線表示一定時段降水總量在面上的分布,即某一給定時間內(nèi)(如年、季、月)的雨量相等各點的連線,可以直觀顯示雨量的地理分布狀況。完成一副降水量等值線圖的繪制,需要一張1:500000的底圖,在這張底圖中包括行政區(qū)域劃分、流域水系、等高線、雨量站點及其降水量值等信息,這樣大的地圖利用Mapinfo可以快速繪制,但Mapinfo的缺點是無法自動插值生成等值線,Surfer是一款繪制等值線圖的小軟件,兩者結(jié)合即可制作出完美的降水量等值線圖。Surfer所讀取的是文本文件,而Mapinfo讀取的是矢量文件,二者要想結(jié)合,必須通過中間轉(zhuǎn)化為mif文件。
建立一個數(shù)據(jù)文件(包括雨量站名、經(jīng)度、緯度、降水量值),在Mapinfo中創(chuàng)建點生成雨量站點圖。在Mapinfo中打開行政區(qū)域圖層,將所需邊界轉(zhuǎn)出為mif文件,再轉(zhuǎn)入到Surfer中成為可識別的邊界bln文件。將數(shù)據(jù)文件再在Surfer中打開,轉(zhuǎn)為網(wǎng)格文件grd,與邊界文件進行白化,便得到邊界內(nèi)的等值線圖。將此等值線圖轉(zhuǎn)入Mapinfo中進行修改,但最為關(guān)鍵的是Surfer不具有坐標(biāo)投影功能,等值線圖轉(zhuǎn)入時必須進行坐標(biāo)修改,否則無法找到圖層,不能實現(xiàn)和底圖的疊加。
本文以2012年太原市45個雨量站降水量為例,對該年的年降水量進行繪制,具體步驟如下:
(1)建立數(shù)據(jù)文件。用excel新建數(shù)據(jù)文件,共分為四列,分別為站名、經(jīng)度x、緯度y、以及(x,y)處降雨量值,命名此文件為太原市降水量.xls。
(2)創(chuàng)建點。運行Mapinfo,打開太原市降水量.xls數(shù)據(jù)文件,選擇表→創(chuàng)建點,選擇經(jīng)度為x坐標(biāo),緯度為y坐標(biāo),點“投影”,選擇類別non-earth(非地球坐標(biāo)),單位為meters(m),設(shè)置合適的x,y軸最小、最大值。即可生成雨量站點圖,如圖1所示:
圖1 太原市雨量站點示意圖
(1)生成邊界文件。在Mapinfo中打開太原市邊界地圖.tab,選擇表→轉(zhuǎn)出,將矢量文件轉(zhuǎn)出為mif格式,Mapinfo導(dǎo)出的該文件內(nèi)容與Surfer所能識別的內(nèi)容不同,需用記事本打開對該文件進行修改,節(jié)點數(shù)據(jù)保持不變,只去掉文件頭及其他格式代碼,并在該文件第一行增加節(jié)點數(shù)n,flag。flag在這里有兩種取值,當(dāng)flag=0時,白化網(wǎng)格文件時,外部區(qū)域被擦除;當(dāng)flag=1時,內(nèi)部區(qū)域被擦除,命名為太原邊界.bln。
(2)繪制等值線。啟動Surfer,選擇網(wǎng)格→數(shù)據(jù),打開太原市降水量.xls,選擇合適的網(wǎng)格化模型方法進行參數(shù)設(shè)置,共有9種方法,經(jīng)比較,選擇徑向基本函數(shù)模型繪制的等值線圖與手工繪制的圖型最接近,再選擇地圖→生成等值線圖,即可生成降水量等值線圖如圖2。
圖2 降水量等值線示意圖
(3)白化。使用Surfer的網(wǎng)格白化功能,可獲得區(qū)域內(nèi)部的等值線圖。打開網(wǎng)格文件(太原市降水量等值線圖.grd),選擇邊界文件(太原邊界.bln),白化后效果圖如圖3。為了下一步配準(zhǔn),需在Surfer中打開網(wǎng)格和坐標(biāo)軸,將圖的左下角坐標(biāo)移動到前述坐標(biāo)頂點(x,y)處,再選擇轉(zhuǎn)出為mif文件,便于導(dǎo)入Mapinfo中可以找到該圖。
圖3 使用白化后的降水量等值線示意圖
實現(xiàn)等值線圖與底圖的疊加,需要在同一坐標(biāo)系下,上述提到Surfer沒有坐標(biāo)投影功能,需在Mapinfo中進行坐標(biāo)修改,由于把經(jīng)度、緯度看成長度單位,在Mapinfo中選擇non-earth(非地球)坐標(biāo)系,單位為米。
(1)制作底圖。打開Mapinfo的幾個圖層,分別為市級政區(qū).tab,縣級政區(qū).tab,山西河流.tab,在此基礎(chǔ)上按照前述創(chuàng)建點的步驟,即可生成如下底圖(圖4):
圖4 太原市流域底圖
(2)配準(zhǔn)底圖。將太原市流域底圖導(dǎo)出為jpg格式,再次運行Mapinfo,選擇配準(zhǔn),在底圖中選擇四個角坐標(biāo),將前述創(chuàng)建點時建立的坐標(biāo)軸最大、最小值輸入。
(3)等值線圖與底圖疊加。打開白化后的等值線圖,即可發(fā)現(xiàn)兩張圖完全疊加。如圖5所示:
圖5 2012年太原市降水量等值線圖
經(jīng)分析比較,計算機繪圖與傳統(tǒng)人工繪圖差異很小,證明此方法可行,僅需10幾分鐘即可出圖,效率高、誤差小。2012年太原市各雨量站降水量呈漸變關(guān)系,沒有出現(xiàn)特大或特小的情況,降水資料真實可靠。
掌握Surfer和Mapinfo這兩個圖形軟件,不僅可用于資料整編中降水量等值線圖的繪制,而且適用于水情工作中幾日暴雨分析,決策者可以根據(jù)圖示清楚看到區(qū)域內(nèi)暴雨中心及降水強度,以及周邊覆蓋程度,因此利用先進的計算機軟件用于解決水文工作中的實際問題,是水文事業(yè)發(fā)展的必然趨勢。