張超
(江西理工大學建筑與測繪工程學院,江西 贛州 341000)
氣溫是最重要的氣象因子之一,對于生態(tài)系統(tǒng)的結構和人類的生產(chǎn)生活都具有十分重要的影響[1]。隨著GIS技術的不斷發(fā)展和應用,研究人員將GIS空間插值的方法應用于氣溫研究[2]??臻g插值常用于將離散點的測量數(shù)據(jù)轉換為連續(xù)的數(shù)據(jù)曲面,以便與其他空間現(xiàn)象的分布模式進行比較[3]。國內外許多學者和研究人員采用空間插值的方法對氣溫變化進行一定的研究。針對不同氣溫插值算法的效率研究,彭彬[4]等對于氣溫插值中不同空間插值方法的適用性進行了分析,從其分析結論看,普通的克里金值方法較適用于安徽省月平均氣溫點數(shù)據(jù)的插值,其精度較其他插值方法更高。針對平均氣溫插值方法研究,李軍[5]等利用空間插值的方法研究了中國1961年~2000年月平均氣溫空間分布。另外,對于空間插值得到的結果,需要采用一定的可視化方法進行表達,而GIS空間可視化方法在各行業(yè)信息表達和傳遞中發(fā)揮著越來越重要的作用。庾露[6]在2010年基于WebGIS的地震災情數(shù)據(jù)可視化系統(tǒng)設計與研究中,使用了WebGIS中的可視化方法對地震災情數(shù)據(jù)進行了可視化的表達。此外,學者王麗穎[7]實現(xiàn)了氣象預報格點信息在WebGIS中的可視化。通過這些研究的實現(xiàn)[8,9],WebGIS可視化方法已經(jīng)被廣泛運用于氣象預報、災情數(shù)據(jù)服務等各行業(yè)中。
本研究基于WebGIS平臺,結合GIS空間插值模型,設計實現(xiàn)了安徽省氣溫變化監(jiān)測管理系統(tǒng),利用GIS強大的數(shù)據(jù)分析能力,進行數(shù)據(jù)管理,生成氣溫變化信息專題圖,將氣溫變化信息通過折線圖和柱狀圖等統(tǒng)計圖更加直觀地反映到圖表中,為氣象相關部門對氣溫變化規(guī)律的預測和氣溫信息的實時有效發(fā)布提供科學依據(jù),也為有效幫助用戶充分了解區(qū)域的氣溫信息奠定基礎,為區(qū)域氣溫變化的監(jiān)測管理提供有力的平臺支撐和技術服務。
(1)克里金插值算法
研究根據(jù)各個氣象站的溫度數(shù)據(jù)以及各個氣象站的具體點位信息采用克里金插值法,把氣溫數(shù)據(jù)插值成相應的等溫線和等溫面。模型在ArcMap中的具體構建情況如圖1所示。其中地理數(shù)據(jù)庫Scratch用來存放模型生成的數(shù)據(jù),數(shù)據(jù)庫Schema用來存放模型生成的數(shù)據(jù),Tool Data用來存放模型需要用到的數(shù)據(jù)Station和city,Contour Service模型是等溫線生成模型,surface模型是等溫面生成模型。
圖1 等溫線數(shù)據(jù)及數(shù)據(jù)庫結構
在等值線模型中,首先將處理范圍設置成city圖層,輸入的點要素在屬性中設置數(shù)據(jù)類型為要素類,數(shù)據(jù)選擇station圖層,并且設置成模型的輸入?yún)?shù)。在柵格數(shù)據(jù)生成等值線的操作中,把等值線的距離設置成輸入?yún)?shù),并設置好默認值0.3。最后將生成的等值線按照city要素層的范圍裁切出最后需要的等溫線矢量數(shù)據(jù),并且將此數(shù)據(jù)設置為輸出參數(shù),如圖2所示。
在等值面模型中,生成柵格數(shù)據(jù)的操作和模型處理范圍與等值面模型中設置一致。之后對得到的柵格數(shù)據(jù)進行裁剪,裁剪的矢量數(shù)據(jù)選擇city要素層,最后得到安徽省區(qū)域范圍內的柵格數(shù)據(jù),并且將其設置為模型的輸出參數(shù),如圖3所示。
圖2 等溫線模型
圖3 等溫面模型
(2)ArcGIS Server地圖服務與GP服務
基于ArcGIS Server發(fā)布地圖服務和GP服務。安徽省氣象專題地圖服務發(fā)布收集了安徽省17個氣象站的具體點位和安徽省行政區(qū)劃圖的矢量空間數(shù)據(jù),包括各個氣象站的具體坐標位置和安徽省各個市的名稱和ID數(shù)據(jù),在Arc Catalog中發(fā)布成地圖服務;針對本文數(shù)據(jù)特征,采用克里金插值算法,并在ArcGIS Server中發(fā)布成為GP服務,如圖4、圖5所示。
圖4發(fā)布的安徽省行政區(qū)劃圖圖5 GP服務相關信息
(3)技術路線
系統(tǒng)采用了WCF服務、GP服務,基于.NET平臺,結合ArcGIS API實現(xiàn)克里格插值算法,具體包括將有限的溫度數(shù)據(jù)插值成等溫線和等溫面。其中WCF服務用于連接SQL Server數(shù)據(jù)庫與Silverlight頁面業(yè)務。另外,還實現(xiàn)了對溫度數(shù)據(jù)的查詢,折線圖、柱狀圖的展示等具體功能。系統(tǒng)的具體流程及功能如圖6所示:
一方面,通過收集氣溫、氣象站點位數(shù)據(jù),將收集到的數(shù)據(jù)整理入庫;另一方面,結合行政區(qū)劃數(shù)據(jù)、遙感影像數(shù)據(jù)將地圖數(shù)據(jù)矢量化。處理完研究區(qū)所需數(shù)據(jù)后,開始搭建系統(tǒng)平臺界面,借助于前端框架技術搭建人機交互性好、較人性化的系統(tǒng)操作界面。再結合系統(tǒng)設計的具體功能需求設計功能類,主要包括數(shù)據(jù)查詢、專題圖展示和數(shù)據(jù)統(tǒng)計分析。數(shù)據(jù)查詢包含對氣溫的年平均氣溫、月平均氣溫和氣象站坐標的查詢管理;專題圖展示主要是針對氣溫年際變化、月季變化和日變化的等溫線和等溫面的制作展示;數(shù)據(jù)統(tǒng)計分析通過柱狀圖、餅狀圖和折線圖等方式對氣溫變化進行相應的數(shù)據(jù)統(tǒng)計并直觀地表達在圖表中。進而是API的詳細設計,通過調用對應的API功能服務,完成系統(tǒng)的開發(fā)和實現(xiàn),最終對系統(tǒng)實現(xiàn)效果進行系統(tǒng)功能測試。
圖6 技術路線圖
(1)系統(tǒng)架構和功能設計
安徽省氣溫變化監(jiān)測與管理系統(tǒng)采用B/S系統(tǒng)架構模式,系統(tǒng)用戶使用客戶端訪問服務端,服務端通過WCF服務訪問氣象數(shù)據(jù)庫,并獲取氣象數(shù)據(jù);服務端訪問GP服務,調用空間插值算法實現(xiàn)氣象數(shù)據(jù)插值,并結合GIS空間分析生成氣溫等值線和等值面,總體架構如圖7所示。
圖7 系統(tǒng)結構圖
系統(tǒng)將安徽省氣溫變化監(jiān)測與管理系統(tǒng)分為三個模塊:基本GIS功能模塊、氣溫查詢與展示模塊、氣溫統(tǒng)計分析模塊。其中,三個模塊具體的功能如下:
基本GIS功能模塊包括了導航工具、放大縮小、全屏顯示、地圖瀏覽、圖例展示、地圖切換、氣象站坐標顯示以及區(qū)域定位功能。
氣溫查詢與展示模塊包括:根據(jù)地區(qū)、年份、月份查詢,支持查詢結果的圖表展示,折線圖和柱狀圖。
氣溫統(tǒng)計分析模塊則包括:針對氣溫變化數(shù)據(jù)經(jīng)過GIS空間分析生成某個月的等氣溫線專題圖以及等氣溫面專題圖并且以合理的渲染方式展現(xiàn)出來。
(2)數(shù)據(jù)庫設計
屬性數(shù)據(jù)庫采用SQL Server作為數(shù)據(jù)存儲,建立安徽省氣溫數(shù)據(jù)庫,命名為Temp,其中包括以年份命名的溫度數(shù)據(jù)表11張,具體有2005年~2015年這11張表;用戶信息表(register_info)、氣象站點位信息表(Station)。空間圖形庫首先在Catalog中新建個人數(shù)據(jù)庫,命名為Temperature,再在數(shù)據(jù)庫中新建要素集Tem,并且設置空間坐標為Beijing_1954_3_Degree_GK_CM_117E,最后在要素集中新建兩個要素層:Station(氣象站點狀數(shù)據(jù)層)、city(安徽省各個市行政區(qū)劃圖所構成的面數(shù)據(jù)層)。將兩個要素層添加到Arc Map中,做好Station和city要素層的矢量化工作。然后再在Station的屬性表中添加字段staname(即氣象站的名稱),按照氣象站點位的具體名稱信息為其賦值。同樣地,在city圖層中添加cities(城市的名稱)字段,根據(jù)具體的圖形名稱信息進行賦值。具體的矢量數(shù)據(jù)及其屬性如圖8、圖9所示:
圖8 氣象站矢量圖 圖9 安徽省政區(qū)圖
安徽省氣溫變化監(jiān)測管理系統(tǒng)界面的總體色調以深藍色為主,主界面主要分為三欄:第一欄,標題欄:包括了系統(tǒng)的名稱以及有關安徽省的插圖;第二欄,功能欄:用來存放系統(tǒng)的主要功能按鈕;第三欄,地圖展示欄:主要用來展示安徽省的地圖數(shù)據(jù)以及一些相關的專題圖、溫度數(shù)據(jù)。三大模塊包括基本GIS功能模塊、氣溫查詢與展示模塊、氣溫統(tǒng)計分析模塊。
基本GIS功能主要包括:導航工具、放大鏡、全屏顯示、地圖瀏覽、圖例展示、地圖切換、氣象站坐標顯示,如圖10~圖15所示。導航工具主要用來對地圖進行放大、縮小、上下左右平移、全屏顯示等操作;放大鏡是對地圖進行放大操作,此外還有全屏顯示的結果;地圖瀏覽的功能是顯示當前地圖顯示窗口的地圖數(shù)據(jù)范圍在整個地圖中的位置,也能夠通過此窗口的平移改變當前地圖數(shù)據(jù)的顯示范圍;圖例展示功能是用來說明當前顯示的地圖數(shù)據(jù)的信息;地圖切換是通過點擊按鈕來實現(xiàn)對底圖的切換;氣象站坐標顯示功能當鼠標靠近具體的氣象站點時顯示該站點的空間坐標,功能實現(xiàn)如圖14所示。系統(tǒng)還包括了安徽省區(qū)域內各個市的定位和高亮顯示功能,這是功能的實現(xiàn)其實是對ArcMap中單個地圖要素的Zoom to layer功能的調用。這個功能在系統(tǒng)中的具體實現(xiàn)情況如圖15所示:
圖10 地圖瀏覽功能展示
圖11 地圖圖例 圖12 圖層切換工具 圖13 導航工具 圖14 坐標顯示
圖15 定位結果展示
氣溫查詢檢索模塊在系統(tǒng)功能中包括統(tǒng)計圖的展示和溫度數(shù)據(jù)的查詢兩個大塊。統(tǒng)計圖的展示:主要是柱狀圖和折線圖的展示。這一功能的實現(xiàn)是通過調用Visifire for Silverlight插件中的圖表功能完成的。在本系統(tǒng)中,統(tǒng)計圖查詢有三種方式,分別是:按地區(qū)查詢,即使用相同年份、相同月份各個地區(qū)的溫度數(shù)據(jù)生成統(tǒng)計圖;按年份查詢,即使用相同地區(qū)、相同月份各個年份的氣溫數(shù)據(jù)生成統(tǒng)計圖;按月份查詢,即使用同一地區(qū)某一年的各個月份的氣溫數(shù)據(jù)生成統(tǒng)計圖。溫度數(shù)據(jù)查詢,這一功能的實現(xiàn)是通過Silverlight與SQL Server數(shù)據(jù)庫的連接,將數(shù)據(jù)庫中的數(shù)據(jù)按照查詢方式的不同展示在系統(tǒng)的DataGrid框中供用戶查看。溫度數(shù)據(jù)的查詢在系統(tǒng)中主要是三種方式:按各個地區(qū)查詢,即查詢各個地區(qū)同一年份、同一月份的所有溫度數(shù)據(jù);按各個年份查詢,即查詢同一地區(qū)同一月份、各個年份的所有溫度數(shù)據(jù);按各個月份查詢,即查詢某一地區(qū)某個年份、各個不同月份的溫度數(shù)據(jù),具體實現(xiàn)如圖16~圖18所示。
圖16 2000年2月各市氣溫變化柱狀圖查詢
圖17合肥市各年氣溫數(shù)據(jù)查詢結果圖18 2015年各市氣溫數(shù)據(jù)查詢結果
氣溫專題圖模塊主要是等溫線專題圖的生成和等溫面專題圖的生成,在系統(tǒng)中選擇所要插值的年份和月份之后,再點擊專題圖的類型即等溫線或等溫面,就可以在地圖展示窗口中看到應用克里金插值法得到的對應時間經(jīng)過渲染的等值線或等值面。專題圖生成的核心思路:在ArcGIS中建立氣溫數(shù)據(jù)的插值模型,包括等值線生成模型和等值面生成模型,再將模型都發(fā)布成GP服務,最后在Silverlight中調用對應的模型生成相應的專題圖。在系統(tǒng)中選擇2015年1月查詢條件進行氣溫專題圖的查詢,查詢得到的結果如圖19~20圖所示:
圖19等溫線2015年1月查詢結果
圖20 等溫面2015年1月查詢結果
以研究區(qū)域氣溫信息變化監(jiān)測與管理作為系統(tǒng)開發(fā)背景,針對研究區(qū)域氣溫信息特征和特定的監(jiān)測管理要求,基于ArcGIS Server平臺對研究區(qū)域氣溫信息系統(tǒng)進行集成和開發(fā),通過構建克里金插值模型并將模型發(fā)布成GP服務,再調用GP服務將安徽省連續(xù)11年各個氣象站的氣溫變化數(shù)據(jù)在研究區(qū)范圍內插值成等溫線和等溫面。借助于GIS強大的數(shù)據(jù)處理分析能力和可視化表達手段對空間及氣溫屬性數(shù)據(jù)進行科學管理、分析和展示。通過相應的統(tǒng)計分析和空間分析更加直觀地展示研究區(qū)氣溫的變化趨勢,便于向社會公眾更為及時準確地傳達氣溫變化情況,也為安徽省相關部門的研究工作提供數(shù)據(jù)依據(jù)和技術參考。
系統(tǒng)在完成相應的核心功能外,也存在一些不足之處。系統(tǒng)所使用的空間插值模型不夠優(yōu)化,在今后的開發(fā)工作中,將進一步改進空間插值算法,尋找更為合適的插值模型,優(yōu)化數(shù)據(jù)結構,提高系統(tǒng)數(shù)據(jù)存取效率。