□ 徐 瓊 □楊樂(lè)非 □崔花瑞(河南省安陽(yáng)水文水資源勘測(cè)局)
Mapinfo是一個(gè)對(duì)地理信息進(jìn)行編輯顯示的軟件,熟悉此軟件的操作可以大大提高工作效率,由于其界面友好、操作簡(jiǎn)單、價(jià)格便宜等特點(diǎn),在水利、環(huán)保、城市規(guī)劃、氣象等部門都得到廣泛應(yīng)用。但該軟件也存在一定的缺陷,在筆者使用Mapinfo繪制降水量等值線的過(guò)程中就遇到過(guò)困難,無(wú)法對(duì)等值線自動(dòng)生成,而手畫起來(lái)又相當(dāng)繁瑣麻煩。后來(lái)經(jīng)過(guò)摸索筆者發(fā)現(xiàn)可以將Mapinfo與Surfer軟件相結(jié)合來(lái)繪制等值線就相對(duì)簡(jiǎn)單容易了。Surfer具有的強(qiáng)大插值功能和繪制圖件能力,成為用來(lái)處理XYZ數(shù)據(jù)的首選軟件,尤其在繪制等值線方面具有很強(qiáng)大的功效。
下面結(jié)合個(gè)人學(xué)習(xí)體會(huì),把繪制等值線的具體操作方法和大家分享:
首先來(lái)了解將Mapinfo與Surfer結(jié)合繪制等值線的基本思路:在Surfer中根據(jù)數(shù)據(jù)文件自動(dòng)生成需要的等值線(可以對(duì)其進(jìn)行修改),然后將Mapinfo中生成的底圖(如行政區(qū)劃圖)經(jīng)過(guò)格式轉(zhuǎn)換添加到Surfer中,最后將兩幅圖進(jìn)行覆蓋疊加得到所需要的成果圖。
第一步,將數(shù)據(jù)文件(點(diǎn)坐標(biāo))轉(zhuǎn)換成Surfer認(rèn)識(shí)的文件格式“.GRD”。比如數(shù)據(jù)文件是一個(gè)Excel表“text.cls”,表格中有三列數(shù)據(jù)分別是“X、Y、Z”,X、Y代表點(diǎn)坐標(biāo)的經(jīng)緯度,Z代表(X,Y)上的值,也就是畫等值線的依據(jù)。然后將該表另存為“test.txt”格式,但是這樣還不能繪制等值線,還要將其轉(zhuǎn)換為“.GRD”格式;打開(kāi)Surfer(以Surfer8.0版本為例)點(diǎn)擊工具欄里“網(wǎng)格—數(shù)據(jù)”,在打開(kāi)的對(duì)話框中選擇“test.txt”,打開(kāi)網(wǎng)格化數(shù)據(jù)對(duì)話框,選擇生成X、Y、Z對(duì)應(yīng)列,在“網(wǎng)格化方法”中選擇一種插值方法(最常見(jiàn)的就是加權(quán)舉例平方反比法和克里格法,這兩種方法在插值點(diǎn)與取樣點(diǎn)重合時(shí),插值點(diǎn)的值就是樣本點(diǎn)的值,而其他方法不能保證如此),然后確定,這樣畫圖需要的grd文件“test.grd”就生成了。
第二步,生成等值線。打開(kāi)Surfer,點(diǎn)擊工具欄“地圖—等值線—新建等值線圖”,選擇“test.grd”,等值線就自動(dòng)生成了。在所畫的等值線圖中雙擊鼠標(biāo),或者點(diǎn)擊右鍵,選中“屬性”,就可以對(duì)等值線的屬性進(jìn)行各種設(shè)置(如填充顏色,修改比例和等級(jí)等等)。
第一步,將Mapinfo生成的底圖,也就是行政區(qū)劃圖(例如hnay.tab)的格式轉(zhuǎn)換為Surfer認(rèn)識(shí)的“.bln”格式。首先在Mapinfo中打開(kāi)hnay.tab,點(diǎn)擊工具欄“表—轉(zhuǎn)出”,將其轉(zhuǎn)為交換文件“.mif”格式的文本文件,然后用記事本打開(kāi),會(huì)發(fā)現(xiàn)mif文件有如下文件頭:
將此文件頭刪去,剩下的部分就是該底圖圖形對(duì)象的坐標(biāo)控制信息,其中開(kāi)頭是“Pline n”代表的是曲線,n代表后面節(jié)點(diǎn)的個(gè)數(shù)。將Pline刪掉,改為n 1兩列,注意文件中其他的一些格式控制符也要全部刪去。然后另存為“.bln”格式(也可以打開(kāi)Surfer點(diǎn)擊“文件—打開(kāi)”,選中該mif交換文件,進(jìn)行修改后另存為bln格式),這樣Mapinfo的mif文件就成功轉(zhuǎn)換成了Surfer所承認(rèn)的bln文件。
第二步,將轉(zhuǎn)換好的bln格式底圖文件添加到等值線圖中。在Surfer中點(diǎn)擊工具欄“地圖—基面圖”選中bln文件,確定,就畫出了行政區(qū)劃圖。
選中所有圖形對(duì)象,點(diǎn)擊“地圖—覆蓋地圖”就實(shí)現(xiàn)了二者的疊加。但是這樣還不能作為最后的成果圖,因?yàn)槎忒B加后在行政界線外面還存在著多余的等值線,這就要對(duì)其進(jìn)行白化操作:
現(xiàn)在回過(guò)頭來(lái)看前面完成的bln文件,bln文件具有以下格式:
其中,length是背景地圖中曲線中坐標(biāo)點(diǎn)的個(gè)數(shù),也就是剛才的n,如果Xn=X1,Yn=Y1,那么所有的點(diǎn)將圍成一個(gè)圈,如果不是這樣,則是一條不閉合的曲線。Flag的值取1或0,當(dāng)取1時(shí),閉合曲線里面的等值線可用此bln文件白化掉(即將閉合曲線中的等值線消除);如果取值0,則是曲線外面的等值線被白化。上面筆者取的值為1,當(dāng)然也可以改成0。
以上面的例子為例介紹白化操作:打開(kāi)Surfer軟件,點(diǎn)擊“網(wǎng)格—白化”選中“test.grd”,確定;然后在新的對(duì)話框中選擇“hnay.bln”,確定;再次輸入要輸出的grd文件的名字,確定,就可以得到一個(gè)被白化過(guò)的grd文件(比如為out.grd),再利用out.grd做等值線圖,按前面的步驟操作就可以得到最終成果圖。
當(dāng)然,成果圖也可以轉(zhuǎn)換為Mapinfo格式。在Surfer中點(diǎn)擊“文件—輸出”選擇mif格式進(jìn)行保存,然后在Mapinfo中點(diǎn)擊“表—轉(zhuǎn)入”選中mif文件,保存再打開(kāi)就出現(xiàn)了成果圖,也可以對(duì)其進(jìn)行修改。
將Mapinfo與Surfer結(jié)合繪制等值線是比較實(shí)用的方法,雖然過(guò)程有一些繁瑣,但是卻對(duì)實(shí)際工作有著很大的幫助,以上只是筆者在使用中總結(jié)的一些經(jīng)驗(yàn)和體會(huì),希望對(duì)大家有所幫助。