摘要:在比較各種集成方法優缺點的基礎上,選擇在DBMS對空間統計分析與GIS組件進行集成,并結合某縣域經濟發展的實例,給出了集成思路及模塊設計圖。實驗結果表明,DBMS是集成空間統計分析與GIS的有效環境。利用該方法可以大大擴展GIS的空間分析功能。
關鍵詞:空間統計分析;集成;ArcObject;數據庫管理系統
中圖分類號:TP311.5文獻標志碼:A
文章編號:1001-3695(2007)08-0292-02
空間統計分析是用來分析空間信息和解決空間問題的,它與一般地理信息系統中所指的空間分析既有相同之處,也有差別。相同之處在于兩者都是對于位置相關的空間信息進行分析;其區別是地理信息系統中所指的空間分析一般以圖形操作為主,如緩沖區分析、疊置分析、網絡分析。空間統計分析是空間分析的組成部分,它主要以數學操作為主,包括空間結構分析、空間自相關分析、空間內插技術以及各種空間回歸模型的建立[1]。在過去的幾十年里,在改善GIS的空間分析功能上有了很大的進展,如主成分分析、點模式分析和克里格分析等高級的空間分析程序已經集成到ArcInfo等大型商業GIS軟件中。但是,目前GIS軟件在空間自相關的度量與檢驗、空間自回歸模型的建立等方面功能還相對很弱。要把GIS變成一個專門的空間分析平臺,還需要大量的工作。更重要的是,空間統計分析在用來確定空間模式時有著不可替代的作用,其應用也越來越廣泛,如呂安民[2]、朱傳耿等人[3]探討了空間統計分析在人口中的應用,范新生等人[4]利用空間統計分析方法探討了SARS疫情的空間分析情況。因此,將空間統計分析與GIS相集成已變得越來越迫切。
1空間統計分析與GIS組件的集成方法
1)開發專門的空間統計分析軟件包
該方法既未利用GIS軟件強大的空間數據處理、顯示、查詢和分析功能,也未利用統計分析軟件中成熟的統計數據分析程序,是一種資源的浪費。
2)將現有的空間統計分析軟件與GIS軟件松散組合
該方法將GIS軟件和統計分析軟件看成兩個獨立的實體,把文件轉換成一個統一的格式,但是忽略了空間數據庫在空間數據分析中獨特的性質,通常也很少考慮。
3)將空間統計分析功能嵌入到GIS中
在以前的研究中,大部分學者都是考慮了第三種方法,即將空間統計分析功能嵌入到GIS中。主要有以下幾個方面的原因[1]:a)GIS的數據結構具有惟一性和復雜性,這在其他的平臺上難以復制;b)大多數的空間統計分析需要輸入地理位置信息,這在GIS中很容易實現;c)許多空間分析函數是由城市和區域科學、地理科學或環境科學的研究者開發的,他們通常對GIS有較深入的了解,更寧愿在GIS的框架下工作。但這種方法有一個缺點即所有的統計分析程序必須重新開發。
4)將選定的GIS功能嵌入到空間統計分析中
該方法在理論上是可行的,但卻很少在實際中應用。主要原因是由于GIS數據結構的復雜性和惟一性,其功能在其他的平臺上很難復制。隨著面向對象編程和組件技術的快速發展,在GIS以外的平臺上復制GIS的功能變得越來越簡單易行。但是,由于目前商業統計軟件包沒有為GIS組件和其他ActiveX控件的嵌入提供一個開放的環境,本文選擇在DBMS中來集成空間統計分析與GIS,并給出了集成思路及其模塊設計圖,同時結合江西省縣域經濟發展的實例,說明該集成方法的可行性和有效性。
2在DBMS中集成空間統計分析與GIS組件
2.1ActiveX和GIS組件
將GIS功能嵌入到空間分析軟件包中,雖然在理論上是集成空間統計分析和GIS 的有效方法,但在實際應用中卻很少。最大的阻礙就是由于GIS復雜的數據結構很難在GIS以外的平臺上復制GIS的功能。然而,隨著面向對象編程和基于組件技術的快速發展,這變得十分簡單易行。這項技術的突破點是ActiveX技術即OLE(對象鏈接和嵌入)。OLE技術最早是由Microsoft公司開發的為Windows提供復制和粘貼功能,隨后又發展為OLE2,為在Windows應用之間提供更多的交互。它允許在一種類型的文件中嵌入另一種類型的文件(如將excel spread sheet嵌入到microsoft word文件中)。在這個發展過程中,產生了一種新的對象交互和封裝模塊——對象組件模型(component object model,COM)。COM的一個主要思想就是提高軟件組件的開發和重用。OLE控件稱為ActiveX控件。本文所選用的GIS控件是目前最流行的ESRI公司的ArcObjects。ArcObjects是ArcGIS家族應用程序ArcMap、ArcCatalog和ArcScene的開發平臺,它是基于Microsoft COM技術構建的一系列COM組件產品。ArcObjects是為專門的開發人員提供的二次開發軟件,通過ArcObjects,用戶可以非常方便地開發出功能強大的GIS應用系統。其主要特點有[5]: 采用面向對象思想、基于組件技術;支持廣泛的空間數據格式;具有強大的GIS功能。
利用ArcObjects,用戶可以實現從空間數據編輯到三維顯示、三維分析等一系列數據處理、顯示和分析功能,并具有豐富的制圖工具和高質量的地圖打印功能輸出。同時,ArcObjects提供了強大的空間數據管理功能,支持多用戶的并發訪問。基于以上特點,本文選擇ArcObjects作為GIS組件。
2.2模塊設計
本文所選用的DBMS為SQL Server。GIS組件用來執行一些對地圖的基本操作,如顯示、查詢、分析、專題地圖的制作等;空間統計分析功能則在空間統計分析模塊中執行,包括空間自相關的度量與檢驗、空間自回歸分析、模型的建立等。空間數據由GIS控件進行管理,用來產生空間結構信息,如各區域單元的鄰接性;屬性數據由DBMS進行管理,作為計算空間統計分析的數據源,并結合由GIS產生的空間鄰近信息,可以進行全局空間自相關的度量與檢驗、局部空間自相關、G統計等。同時計算結果還可以在GIS中可視化輸出,如探索空間數據分析、分級顯示、專題地圖的制作等,以方便用戶對數據中隱含的信息進行提取分析,揭示數據中隱含的空間關系。圖1是在DBMS中集成空間統計分析與GIS的示意圖。以執行空間統計分析功能為例,其工作流程如圖2所示。
GIS和空間統計分析模塊通過DBMS建立聯系。首先利用以下幾行代碼就可以打開數據庫中的數據:
sub OpenData(TableName as String)
Dscup=\"datasource=\"+ds+\"; initial catalog=\"+cl+\"; user id=sa;password=\"
with cn
.Provider=\"sqloledb\"
.open Dscup
end with
SqlStr=\"select*from\"+\"\"+TableName+\"where code=362502\"
rs.CursorType=adOpenStatic
rs.Open SqlStr, cn, , , adCmdText
end sub
在打開數據之后,利用VB+AO可以將從屬性數據庫中獲得的數據放在form窗體中的grid控件中,再將數據寫入GIS圖層的屬性表。其代碼如下:
Form2.Grid.Cols = pfeature.Fields.FieldCount+1
for n = 1 to Form2.Grid.Cols-1
Form2.Grid.TextMatrix(0, n)=m_pLayer.FeatureClass.Fields.Field(n-1).AliasName
if n <> 2 then
Form2.Grid.TextMatrix(1,n)=pfeature.Value(CLng(n-1))
else
Form2.Grid.TextMatrix(1, n)=str
end if
next n
2.3實例分析
本文以2004年江西省GDP增長速度為例,在DBMS中集成了空間統計分析與GIS組件。其用戶界面如圖3所示。在本例中,實現了顯示、查詢、分析、制圖等一些GIS功能;同時也實現了空間統計分析,如江西省縣域經濟的空間自相關的度量與檢驗、局部空間自相關的度量與檢驗、G統計等。
表1是江西省2004年江西省各縣市GDP增長速度的全局自相關系數及其檢驗Z值。結果表明2004年江西省各縣市經濟發展存在正的空間自相關,即高GDP增長率的地方相互聚集,低GDP增長率的地方相互聚集。
同時還可以利用AO強大的制圖功能結合VB實現散點圖和各種專題地圖的制作以及多窗口鏈接功能,進行探索性空間數據分析。例如實現散點圖、地圖和屬性表之間的鏈接。當在一個窗口中選中一個目標時,該目標在其他窗口中的位置或屬性值也會相應地以高亮度顯示出來。
3結束語
目前集成空間統計分析與GIS的方法有四種,每種方法各有其優缺點,其平臺也隨著用戶的不同而不同。本文在綜合各種方法優缺點的基礎上,選擇在DBMS中對空間統計分析與GIS組件進行集成。實驗結果表明,利用該集成方法可以大大地擴展GIS的空間分析功能,彌補GIS在以數學操作為主的空間統計分析功能的不足,擴大了GIS的應用領域。而且,空間統計分析的結果可以在GIS中可視化地表達出來,數據中隱含的空間模式更直觀地呈現給用戶。該集成方法的靈活性高,用戶可以根據自己的需要開發出功能完善的空間分析程序,GIS的功能利用AO控件加上VB可視化編程語言便可實現。但是,該方法也有一個不足之處,即程序開發工作量較大。以后的研究將致力于實現空間統計分析與GIS集成的網上發布,用戶可以隨時加載各種格式的地圖數據,獲取自己想要的信息,以真正實現資源共享。
參考文獻:
[1]柏延臣,李新,馮學智. 空間數據分析與空間模型[J].地理研究,1999,18(2):185190.
[2]呂安民,李成名,林宗堅,等. 中國省級人口增長率及其空間關聯分析[J].地理學報,2002,57(2):143150.
[3]朱傳耿,馬榮華,甄峰,等.中國城市人口流動的空間結構[J].人文地理,2002,17(1):65-68.
[4]范新生,應龍根.中國SARS疫情的探索性空間數據分析[J].地球科學進展,2005,20(3):282-291.
[5]韓鵬,徐占華,褚海峰,等. 地理信息系統開發——ArcObjects方法[M].武漢:武漢大學出版社,2005.
[6]
陳斐.基于空間統計分析與GIS的區域經濟分析研究[D].武漢:武漢大學,2002.
[7]王學軍. 空間分析技術與地理信息系統的結合[J].地理研究,1997,16(3):7074.
[8]吳玉鳴,徐建華.中國區域經濟增長聚集的空間統計分析[J].地理科學,2004,24(6):654-659.
[9]葉明.基于GIS的寧波區域經濟數據空間分析[J].寧波大學學報:理工版,2003,16(3):235-239.
[10]蘇方林.基于地理加權回歸模型的縣域經濟發展的空間因素分析——以遼寧省縣域經濟為例[J].學術論壇,2005(5):81-84.
[11]王勁峰,武繼磊,孫英君,等.空間信息分析技術[J].地理研究,2005,24(3):464-472.
[12]GOODCHILD M,HAINING R.Integrating GIS and spatial data analysis: problems and possibilities[J].Int J Geographical Information Systems,1992,6(5):407-423.
[13]FOTHERINGHAM A S,ROGERSON P A.GIS and spatial analysis problems[M].Lodon:TayLor Francis,1994.
注:“本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文”