GIS和空間分析的基本方法[1].doc_第1頁
GIS和空間分析的基本方法[1].doc_第2頁
GIS和空間分析的基本方法[1].doc_第3頁
GIS和空間分析的基本方法[1].doc_第4頁
GIS和空間分析的基本方法[1].doc_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

第一部分 GIS和空間分析的基本方法201第一章 ArcGIS入門:數(shù)據(jù)管理及基本的空間分析工具地理信息系統(tǒng)(GIS)是一種計算機(jī)信息系統(tǒng),用于獲取、存儲、處理、查詢、分析及顯示地理數(shù)據(jù)。在GIS眾多功能中,制圖一直是它的一項主要功能。本章的首要目的是演示如何借助GIS進(jìn)行電腦制圖。主要技巧包括空間與非空間(屬性)數(shù)據(jù)的管理以及二者之間的聯(lián)系。但是,GIS遠(yuǎn)不只是一種制圖工具,隨著GIS軟件功能越來越強(qiáng)大,界面越來越友好,它在空間分析中的應(yīng)用越來越廣。本章第二個目的是介紹GIS的一些基本空間分析工具。鑒于ArcGIS在教育、商業(yè)及政府機(jī)構(gòu)中的廣泛應(yīng)用,本書采用它作為主要的軟件平臺來完成GIS任務(wù)。除非特別說明,本書所有GIS操作都是基于ArcGIS9.0。各章結(jié)構(gòu)的安排類似:先從基本概念著手,介紹GIS方法的基本內(nèi)容;然后用案例來使者熟悉剛剛介紹的GIS方法。本章第1.1節(jié)簡要介紹ArcGIS中的空間及屬性數(shù)據(jù)管理,第1.2節(jié)為案例1A,通過繪制庫婭霍加縣的人口密度分布圖來演示基于GIS作圖的基本過程。第1.3節(jié)介紹ArcGIS中基本的空間分析工具,包括空間查詢、空間連接、地圖疊加等。第1.4節(jié)為案例1B,演示了一些空間分析工具:提取克里夫蘭市的普查小區(qū),生成多邊形鄰接矩陣。在高級空間統(tǒng)計研究如空間聚類和空間回歸分析中,我們常常用多邊形鄰接矩陣來定義空間權(quán)重(參見第九章)。本書假設(shè)讀者具有初極GIS知識。本章不會涵蓋所有的ArcGIS功能。相反,它只是回顧ArcGIS的主要功能,給讀者一個”熱身賽”, 以便引導(dǎo)讀者繼續(xù)學(xué)習(xí)章節(jié)中的一些高級空間分析方法。1.1ArcGIS中的空間和屬性數(shù)據(jù)管理2因為本書選擇ArcGIS作為主要的軟件平臺,所以有必要簡單介紹一下它的主要模塊及功能。ArcGIS是美國環(huán)境系統(tǒng)研究所(ESRI)2001年發(fā)布的一種基于圖形界面(GUI)的軟件平臺,用以代替以前基于命令行的ArcInfo。ArcGIS包括3個主要模塊:ArcCatalog、ArcMap和ArcToolbox。ArcCatalog用于查看、管理空間數(shù)據(jù)文件。ArcMap用于顯示、分析、編輯空間及屬性數(shù)據(jù)。ArcToolbox整合了各種數(shù)據(jù)管理和數(shù)據(jù)分析工具箱,包括地圖投影管理、數(shù)據(jù)格式轉(zhuǎn)換以及實現(xiàn)早期的ArcInfo命令。在ArcGIS9.0中,ArcToolbox可以從ArcMap或 ArcCatalog界面中激活。大部分(但不是全部)早期ArcInfo命令都可以在ArcGIS中實現(xiàn)。對于有些命令或功能,我們作空間分析還是用的較勤,仍然需要用到ArcInfo的命令行界面。例如,在附錄1中討論了如何用ArcInfo Workstation來讀取、輸出ASCII文件。第二章中的案例2介紹了如何用ArcInfo Workstation來計算網(wǎng)絡(luò)距離。1.1.1地圖投影及空間數(shù)據(jù)模型GIS不同于其他信息系統(tǒng)的一個顯著特點是它能夠管理地理或空間(區(qū)位)數(shù)據(jù)。為了理解這一點,我們需要具備地理坐標(biāo)系統(tǒng)的基礎(chǔ)知識,例如,我們需要了解經(jīng)緯度及用x、y坐標(biāo)在各種平面坐標(biāo)系上的表示方法。將地球的橢球表面轉(zhuǎn)換為平面,或在不同平面坐標(biāo)系之間進(jìn)行轉(zhuǎn)換的過程稱為地圖投影。在ArcGIS中,ArcMap會自動地將不同坐標(biāo)系的數(shù)據(jù)轉(zhuǎn)化為最先添加的圖層坐標(biāo)系,這個過程一般稱為即時投影變換(on-the-fly reprojections)。但是,如果數(shù)據(jù)量較大的話,這個過程可能會花很多時間。所以,同一個項目里面的所有圖層最好用同一種投影。美國常用的投影有兩種:通用橫軸墨卡托投影(UTM)和州平面坐標(biāo)系統(tǒng)(State Plane Coordinate System,SPCS)。 嚴(yán)格來說,SPCS并不是單一的一種投影,它可能使用三種投影中的一種:蘭伯特等角圓錐投影、橫軸墨卡托投影、斜軸墨卡托投影。為了盡量減少變形,南北向長條形的州或地區(qū)使用橫軸墨卡托投影,東西向長條形的州或地區(qū)使用蘭伯特等角圓錐投影。有些州(如阿拉斯加、紐約州)可能用不只一種投影。更多內(nèi)容,讀者可以參閱ESRI公司ArcGIS光盤上的“理解地圖投影”PDF文件。 在ArcGIS中查看空間數(shù)據(jù)圖層的投影,可以在ArcCatalog中點擊該圖層,然后選擇Metadata Spatial,或者在ArcMap右鍵單擊圖層,依次選擇layer Properties Source。 在ArcToolbox中進(jìn)行投影相關(guān)操作的辦法為:依次點擊Data Management Tools Projections and Transformations,在投影與變換工具箱(Projections and Transformations)下,投影定義工具(Define Projection)將新建一個包含投影參數(shù)的投影文件(PRJ),或者矯正原來的錯誤投影。投影定義工具只是標(biāo)記地理數(shù)據(jù)的正確坐標(biāo)系統(tǒng),坐標(biāo)系統(tǒng)本身不會被改變。對于矢量空間數(shù)據(jù),選擇Feature Project,將坐標(biāo)系統(tǒng)從一種投影轉(zhuǎn)換到另一種投影,并生成一個新的圖層。本工具中提供了如下一些選項:創(chuàng)建新坐標(biāo)系統(tǒng),使用一個現(xiàn)存的坐標(biāo)系統(tǒng),從一個地理數(shù)據(jù)中輸入坐標(biāo)系統(tǒng)。對于柵格數(shù)據(jù),則選擇Raster Project Raster.3GIS可以處理矢量和柵格兩種空間數(shù)據(jù)。在處理矢量數(shù)據(jù)時,GIS用地理坐標(biāo)點來構(gòu)建點、線、面等要素;在處理柵格數(shù)據(jù)時,GIS借助按行列排列柵格單元來表征空間要素。柵格數(shù)據(jù)的結(jié)構(gòu)比較簡單,模型構(gòu)造相對容易。社會經(jīng)濟(jì)應(yīng)用中大多使用矢量數(shù)據(jù),本書的大部分GIS應(yīng)用也使用矢量數(shù)據(jù)。大部分商業(yè)GIS軟件都提供了矢量、柵格數(shù)據(jù)的互相轉(zhuǎn)換。在ArcGIS中,可以通過調(diào)用ArcToolbox中的轉(zhuǎn)換工具(Conversion Tools)來實現(xiàn)。ESRI公司的早期GIS軟件使用coverage數(shù)據(jù)模型。后來在開發(fā)ArcView軟件包時,采用了shapefiles數(shù)據(jù)模型。在ArcGIS 8及以后的版本中,開始使用geodatabase模型,代表了面向?qū)ο髷?shù)據(jù)模型的新趨勢。面向?qū)ο蟮臄?shù)據(jù)模型把物體的幾何特征(空間數(shù)據(jù))也當(dāng)作一種屬性數(shù)據(jù)來存儲,而傳統(tǒng)的coverage和shapefiles模型是將空間和屬性兩種數(shù)據(jù)單獨存儲的。一般而言,社會經(jīng)濟(jì)分析中的空間數(shù)據(jù)和屬性數(shù)據(jù)常常來自不同的渠道,在用GIS進(jìn)行制圖或分析之前的一個基本任務(wù)是把他們連接在一起。這就涉及到下面將要介紹的屬性數(shù)據(jù)管理了。1.1.2屬性數(shù)據(jù)管理及屬性連接GIS數(shù)據(jù)分為兩類,即空間數(shù)據(jù)和屬性數(shù)據(jù)??臻g數(shù)據(jù)表征地圖要素的幾何特征,屬性數(shù)據(jù)則描述要素的一些特征。屬性數(shù)據(jù)往往以表格或表格文件的方式存儲。Shapefile屬性表使用dBase數(shù)據(jù)格式,ArcInfo Workstation使用INFO格式,geodatabase表格使用Microsoft Access格式。ArcGIS也能夠讀取幾種ASCII數(shù)據(jù)格式,包括逗號分隔和tab分隔的文本文件。附錄1討介紹了用ArcGIS輸入/輸出ASCII數(shù)據(jù)的方法,如果要用GIS和其它軟件(如SAS)進(jìn)行高級分析,或者自己編寫一些程序來完成復(fù)雜的任務(wù),這種數(shù)據(jù)轉(zhuǎn)換是非常重要的操作。 基本的數(shù)據(jù)管理任務(wù),有些用ArcCatalog或ArcMap都可以實現(xiàn),而其他一些任務(wù)則只有其中一種工具可以完成。例如,新建數(shù)據(jù)表或刪除/拷貝一個數(shù)據(jù)表都只能在ArcCatalog中實現(xiàn)(前面我們曾提到,ArcCatalog可以用于查看和管理GIS數(shù)據(jù)文件)。數(shù)據(jù)表的創(chuàng)建過程為:右鍵單擊將要在里面創(chuàng)建數(shù)據(jù)表的文件夾,選擇new即可。而要刪除或拷貝數(shù)據(jù)表,只要在ArcCatalog中右鍵單擊該數(shù)據(jù)表,然后單擊Delete(或Copy)即可。4如果要在一個數(shù)據(jù)表中新增一個變量(可能是在shape文件屬性表或dBase文件中新增一列或是在ArcInfo workstation的INFO文件中新增一項),ArcCatalog和ArcMap都可以勝任。刪除INFO文件中的某一項也可以任選ArcCatalog或ArcMap之一來完成;但是,刪除dBase文件中的一列則只能用ArcMap來實現(xiàn)。例如,在shape文件屬性表中新增一列,可以用ArcCatalog來實現(xiàn),即右鍵點擊shape文件 Properties Fields,在空白行里面輸入新建列的名字,并定義數(shù)據(jù)類型即可。在ArcMap中,則要先打開數(shù)據(jù)表 Options Add Field。在ArcMap中刪除一列,可以打開數(shù)據(jù)表,然后右鍵單擊該列,然后選Delete Field即可。如果要進(jìn)行列之間數(shù)據(jù)的運算,可以用ArcMap:打開數(shù)據(jù)表 右鍵單擊列 Calculate Values。此外,在ArcMAP中,可以通過右鍵單擊列,然后選擇Statistics來得到一些基本的統(tǒng)計參數(shù)。 在GIS中,我們常常使用的屬性連接,是基于某一個相同列將兩張表的信息連接在一起。被連接的表可能是一個與特定地理數(shù)據(jù)庫有關(guān)的屬性表,也可能是一個獨立的數(shù)據(jù)表。在進(jìn)行屬性連接時,公共標(biāo)簽的名字可以不同,但它們的數(shù)據(jù)類型必須匹配。數(shù)據(jù)表之間的連接關(guān)系有多種:一對一、多對一、一對多、多對多。一對一或多對一連接是通過ArcGIS中的join來完成的。但是,一對多或多對多連接則不能用join來實現(xiàn),這需要用ArcGIS中的relate來關(guān)聯(lián)兩張表,在關(guān)聯(lián)的同時會保持兩張表各自獨立。在進(jìn)行關(guān)聯(lián)(relate)時,是從一張表中選取一條或多條記錄,然后從另一張表中選取若干條關(guān)聯(lián)記錄。表1.1列出了上述連接的關(guān)系及所用的ArcGIS工具。連接(join)或關(guān)聯(lián)(relate)是通過ArcMap來實現(xiàn)的。在地圖目錄中,右鍵單擊空間數(shù)據(jù)或目標(biāo)表格,然后依次選擇Joins and Relates Join(或Relate),然后,在連接數(shù)據(jù)對話框中選擇“Join attributes from a table”。連接只是暫時的,并不會新建數(shù)據(jù)表,如果退出項目時不保存的話,下次再打開時連接就沒有了??梢园堰B接后的結(jié)果輸出為新的數(shù)據(jù)表從而永久地保存。一旦屬性信息連接到空間圖層,我們就可以用ArcGIS方便地制圖了。在ArcMAP中,右鍵單擊圖層,選擇Properties,在彈出的對話框中選擇Symbology。在這里,我們可以選取某一列指標(biāo)來繪制地圖,可以選擇要素顯示的顏色和圖例,設(shè)置顯示的模板。地圖要素(比例尺、指北針、圖例)可以從主菜單中插入(Insert)。1.2案例1A:繪制俄亥俄州庫婭霍加縣人口密度模式圖5對于那些不太熟悉GIS的讀者,如果能夠通過簡單地點擊幾下鼠標(biāo)就可以親自繪制一張地圖,則可以很快嘗GIS的甜頭, 克服對GIS復(fù)雜性的神秘感。本節(jié)通過一個例子來演示如何在GIS連接空間和非空間信息,并用于繪制地圖。在接下來的操作中,我們將演示第1.1節(jié)里面介紹的大部分功能。完成一個GIS項目開始之前先要收集相關(guān)數(shù)據(jù)。一般而言,我們可以使用現(xiàn)存的數(shù)據(jù)。在美國社會經(jīng)濟(jì)應(yīng)用研究中,美國人口普查局發(fā)布的拓?fù)浼傻乩砭幋a參照文件(TIGER)及十年一度的人口普查數(shù)據(jù)是空間數(shù)據(jù)和屬性數(shù)據(jù)的主要來源。這兩種數(shù)據(jù)都可以從普查局的網(wǎng)站下載()。熟練的ArcGIS用戶可以直接下載TIGER數(shù)據(jù),然后用TIGER轉(zhuǎn)換工具提取所需空間數(shù)據(jù)。依次點擊ArcToolbox里面的Coverage Tools Conversion To Coverage Advanced Tiger Conversion(或Basic Tiger Conversion)即可激活TIGER轉(zhuǎn)換工具。轉(zhuǎn)換過程可能會花些時間,而轉(zhuǎn)換之后的數(shù)據(jù)可能還需要進(jìn)一步的加工。所幸的是,一些網(wǎng)站提供了業(yè)已處理好的ArcGIS格式(shapefiles或coverage)的TIGER空間數(shù)據(jù)下載服務(wù)。ESRI發(fā)布ArcGIS軟件時,附送有包含這些數(shù)據(jù)的光碟。如果空間數(shù)據(jù)是交換格式(e00)的,則可以很方便地進(jìn)行轉(zhuǎn)換:依次點擊:ArcToolbox Coverage Tools Conversion To Coverage Import from Interchange File。在下面的案例中,我們將直接使用從ESRI網(wǎng)站下載的shapefile空間數(shù)據(jù)。盡管讀者可以自己下載數(shù)據(jù),但為方便起見,本書光盤中提供了所需數(shù)據(jù):1. shape文件:tgr39035trt00; 2. dBase文件:tgr39000sf1trt.dbf。在本書中,所有計算機(jī)文件、變量名以及某些工程中將要用到的命令行都用Courier New 字體。下面是分步介紹的操作過程。1. 下載空間數(shù)據(jù)登錄ESRI公司的網(wǎng)站,進(jìn)入到2000年人口普查TIGER/Line Data頁面:/data/download/census2000_tigerline/。選擇Ohio州Cuyahoga縣,下載2000的普查小區(qū)數(shù)據(jù),為壓縮后的shape文件。解壓后得到名為tgr39035trt00的shapefile圖層。在tgr39035trt00這個文件名中,tgr表示它來源于TIGER文件,39是州的FIPS編碼,035是縣的編碼,trt00表示2000的普查數(shù)據(jù)。Shapefile圖層至少包含3個文件:.dbf、.shp、.shx。有些還包括其他一些文件如.prj、.sbx、.avl、.xml。為方便起見,本書余下部分一律用單數(shù)形式的“shapefile”指代一個shapefile圖層所有文件。2.轉(zhuǎn)換到UTM投影在ArcCatalog中,查看shapefile文件tgr39035trt00的投影,發(fā)現(xiàn)它使用的是地理坐標(biāo)系統(tǒng)。在ArcToolbox中,依次選擇Data Management Tools Projections and Transformations Feature Project,激活投影變換對話框。在對話框中,選擇tgr39035trt00.shp作為輸入數(shù)據(jù),將輸出數(shù)據(jù)命名為cuyautm.shp,定義輸出坐標(biāo)系統(tǒng)為UTM(zone 17,units meters)。在這里,我們從一個現(xiàn)存的數(shù)據(jù)集中提取投影文件來定義輸出的坐標(biāo)系統(tǒng):點擊“Output Coordinate System”旁的圖標(biāo),激活空間參照屬性對話框 Import clevbnd。圖1.1為本任務(wù)的對話框。點擊ok執(zhí)行任務(wù)。3. 計算shapefile文件中面要素的面積在ArcMap中(本書中除非特別說明,ArcMap是我們ArcGIS的默認(rèn)工作環(huán)境),打開cuyautm的屬性表,右鍵單擊Options按鈕,選擇Add Field,新增一列area,設(shè)置數(shù)據(jù)類型為雙精度Double。右鍵單擊列area,選擇Calculate Values以計算面積。在對話框中,點擊Advanced,在第一個文本框中輸入下述VBA命令,Dim dblArea as doubleDim pArea as IAreaSet pArea = shapedblArea = pArea.area在第二個文本框,即“area=”下面的文本框中輸入dblArea。點擊OK計算面積。圖1.2為計算面積的對話框示例。需要說明的是,在更新的ArcGIS版本(如9.2)中, 計算面積很簡單:右鍵單擊列area,選擇Calculate Geometry,然后在對話框中的Property項選Area、Units項選Square Meters sq m以計算面積。74.下載屬性數(shù)據(jù)屬性數(shù)據(jù)可以從上面同一個網(wǎng)站下載,選擇“2000 census tract demographics (SF1)”即可。屬性數(shù)據(jù)tgr39000sf1trt.dbf是整個俄亥俄州的數(shù)據(jù),為dBase格式,SF1表示Summary File 1(即基于普查短表的100%普查的匯總數(shù)據(jù))。這里的dBase文件并不包含所有的普查變量。如要獲取完整的普查數(shù)據(jù),可以訪問2000年人口普查網(wǎng)站:/main/www/cen2000.html。處理SF1、SF3等文件時,需要知道2000年人口普查數(shù)據(jù)的結(jié)構(gòu),并要用到一些數(shù)據(jù)分析軟件如SAS、Access。SF3 就是基于普查長表的1%抽樣數(shù)據(jù)。5. 提取凱霍加縣的屬性數(shù)據(jù)在ArcMap中,添加并打開表tgr39000sf1trt.dbf。點擊表右下角的選項按鈕(Options) 選擇Select By Attributes 輸入SQL(結(jié)構(gòu)查詢語言)語句:county=035 并按Apply,執(zhí)行查詢(第1.3節(jié)有更多關(guān)于ArcGIS的查詢操作)。所有凱霍加縣的數(shù)據(jù)將被選中。點擊Options鍵,將結(jié)果輸出(Export)名為cuya2k_popu.dbf的文件。如果愿意,可以把該文件中多余的數(shù)據(jù)列刪去,只保留我們需要的STFID和POP2000兩列。這一步可以略過,即直接將表tgr39000sf1trt.dbf連接到圖層cuyautm,所得結(jié)果將自動去掉其他縣的數(shù)據(jù)。這里設(shè)計這一步是為了讓讀者練習(xí)屬性查詢這一功能。6. 連接空間數(shù)據(jù)和屬性數(shù)據(jù)右鍵單擊圖層cuyautm Joins and Relates Join,基于公共標(biāo)簽STFID將表cuya2k_popu.dbf連接到cuyautm。STFID是每個普查小區(qū)的唯一標(biāo)志碼,包含州(2位)、縣(3位)及普查小區(qū)(6為)的編碼。圖1.3顯示了空間數(shù)據(jù)和屬性數(shù)據(jù)的連接方式及與地圖要素的關(guān)系。7. 添加并計算人口密度右鍵單擊圖層cuyautm,選擇Open Attribute Table,打開屬性表以檢查連接結(jié)果。在連接后的表中,列的名稱由兩部分組成,第一部分為原表名,第二部分為列名。例如,cuyautm.area表示該列為cuyautm屬性表中的area變量,tgr39000sf1trt.STFID表示表tgr39000sf1trt.dbf中的STFID(變量名過長時會自動截短)。在本書后續(xù)講解(例如計算公式、表連接等操作)中,除非為了強(qiáng)調(diào),當(dāng)我們提到列名稱時,將省略源表名。單擊Options按鈕 Add Field,新增一列popuden,此列將顯示在cuyautm屬性表的最后,但位于表cuya2k_popu.dbf第一列之前。右鍵單擊列popuden,選擇Calculate Values ,輸入公式1000000*POP2000/area。在公式中,POP2000和area都是通過直接雙擊最上面對話框中的列名稱來實現(xiàn)的,這樣既可以節(jié)省時間,也可以減少直接輸入可能出現(xiàn)的錯誤。在本書后續(xù)講解中,為簡單起見,我們只列出計算公式如 popuden=1000000*POP2000/area。注意到地圖投影的單位是米,而人口密度的單位為每平方公里的人口數(shù),所以我們公式中乘上了1000,000。8. 繪制人口密度模式圖右鍵單擊圖層cuyautm Properties Symbology Quantities Graduated Colors,基于popuden繪制人口密度圖。我們可以嘗試不同的分類方法、分類數(shù)及色彩方案。在主菜單中,選擇View Layout View來預(yù)覽地圖。在主菜單中,選擇 Insert Legend(Scale Bar, North Arrow等),可以插入比例尺、指北針、圖例等地圖要素。圖1.4為研究區(qū)內(nèi)的人口密度圖,北部的那一大片空白區(qū)域為伊利湖。本圖中的人口密度分級是作圖者自己定義(Customized)。1.3ArcGIS中的空間分析工具:查詢、空間連接、地圖疊加許多空間分析任務(wù)需要利用空間要素之間的位置關(guān)系,進(jìn)行查詢(queries)、空間連接(spatial joins)及地圖疊加(map overlays)。這三種都是空間分析的基本工具。查詢包括屬性(非空間)查詢和空間查詢。屬性查詢是基于屬性表來提取在該屬性表中的屬性信息,或?qū)?yīng)的空間圖層中的空間信息。在ArcMap中進(jìn)行屬性查詢,有兩種辦法(1)從主菜單中選擇Selection by Attributes;(2)在一個打開的數(shù)據(jù)表中,選擇Options按鈕 Selection by Attributes。兩種方法都是基于屬性變量用SQL查詢語句來選擇空間要素(或只是簡單地從一個獨立的屬性表中選取若干條記錄)。案例1A第5步中已經(jīng)用到了這個功能。在主菜單的Selection菜單下,另有一個選項為交互式選擇方法(Interactive Selection Method),就是用鼠標(biāo)在屏幕(地圖或?qū)傩员恚┥线x擇要素。與其他信息系統(tǒng)相比,GIS的一個獨特之處在于它的空間查詢能力,即能夠基于不同圖層要素之間的位置關(guān)系進(jìn)行信息查詢。主菜單Selection菜單有一個Selection by Location選項,它可以基于一個圖層中的要素與另一個圖層中的要素之間的位置關(guān)系進(jìn)行查詢。可供查詢的空間位置關(guān)系包括相交(intersect)、在一定范圍之內(nèi)(are within a distance of)、完全包含(completely contain)、完全在范圍之內(nèi)(are completely within),等等。查詢(屬性查詢或空間查詢)所得結(jié)果可以輸出為新的數(shù)據(jù)文件:(1)用右鍵單擊源圖層,然后選擇Data Export Data,可以將查詢所得空間要素輸出為新的圖層文件;(2)單擊數(shù)據(jù)表中的Options按鈕 Export,可以將結(jié)果保存為數(shù)據(jù)表。屬性連接是基于兩表的共同列進(jìn)行的,而空間連接是基于兩個圖層空間要素的位置關(guān)系如重疊、近鄰等來完成的。我們用源圖層和目標(biāo)圖層來區(qū)分不同圖層在空間連接時的作用相異:源圖層的屬性經(jīng)過空間連接后就轉(zhuǎn)換到目標(biāo)圖層中了。如果源圖層中的一個對象對應(yīng)于目標(biāo)圖層中的一個或多個對象,則是一個簡單的空間連接(Simple join)。例如,將縣域多邊形圖層(源圖層)空間連接到學(xué)校位置(目標(biāo)圖層)的點圖層,縣圖層的屬性(如FIPS編碼、縣名、縣長名)就轉(zhuǎn)到那些落入縣域邊界內(nèi)的學(xué)校。如果源圖層的多個對象對應(yīng)于目標(biāo)圖層的一個對象,就可能進(jìn)行兩種操作:匯總連接(summarized join)和距離連接(distance join)。匯總連接是指將源圖層的數(shù)值屬性進(jìn)行匯總(例如取平均值、求和、最小值、最大值、標(biāo)準(zhǔn)差、方差)后再將結(jié)果添加到目標(biāo)圖層中。距離連接是從源圖層所有要素中尋找一個距離目標(biāo)圖層中的匹配對象最近的要素,然后將它的屬性及距離值(為二要素之間的距離)添加到目標(biāo)圖層中。例如,我們可以將地理位置編碼的犯罪數(shù)據(jù)(源圖層)與普查小區(qū)(目標(biāo)圖層)進(jìn)行空間連接,從而得到按普查小區(qū)匯總的犯罪數(shù),這就匯總連接;我們也可以將公交站點圖層(源圖層)與普查街區(qū)重心的點圖層(目標(biāo)圖層)進(jìn)行空間連接,從而得到距離每個普查街區(qū)最近的公交站點,這就是距離連接。不同空間要素之間的連接方式多種多樣(Price, 2004: 287-288)。表1.2是ArcGIS中各種空間連接的小結(jié)。與屬性連接類似的是,空間連接是在ArcMap中實現(xiàn):右鍵單擊源圖層 選擇Joins and Relates Join。在連接數(shù)據(jù)對話窗口中,選擇“Join data from another layer based on spatial location”而不是“Join attributes from a table”。后者就是前面已經(jīng)講述的屬性連接。地圖疊加可以廣義地定義為任何不同圖層改變要素的空間分析??梢杂肁rcGIS來實現(xiàn) 常用的地圖疊加工具主要有:剪切(Clip)、相交(Intersect)、合并(Union)、緩沖區(qū)(Buffer)、多重緩沖區(qū)(Multiple Ring Buffer)。剪切是用一個圖層的邊界來截取另一個圖層。相交是取疊加兩圖層的公共部分即交集。合并是取兩個圖層的并集。緩沖區(qū)是基于點、線或面狀要素向外擴(kuò)展一定的緩沖距離形成面狀要素。多重緩沖區(qū)是基于多個距離同時生成一系列的緩沖區(qū)。在ArcGIS 9.0中,上述地圖疊加工具分散在ArcToolbox Analysis Tools中的不同位置:剪切在Extract工具庫中,相交、合并在Overlay工具庫中,緩沖區(qū)、多重緩沖在Proximity工具庫中。本書用到的其他地圖疊加工具包括:刪除(Erase,參見第1.4.2節(jié)第3步)、近鄰(Near ,參見第2.3.2節(jié)第2步)、點距離(Point Distance,參見第2.3.1節(jié)第2步)、邊界合并(Dissolve,參見第4.3.1節(jié)第2步)、附加(Append,參加第4.3節(jié))等。有讀者可能已經(jīng)注意到空間查詢、空間連接及地圖疊加之間的相似之處。事實上,許多空間分析任務(wù)可以用這三種方法中的任何一種來實現(xiàn)。表1.3列出了他們之間的區(qū)別??臻g查詢只是尋找并顯示所需信息,它本身并不創(chuàng)建新的圖層(除非我們將選中的要素輸出成新的文件)??臻g連接總是將連接結(jié)果保存為一個新的圖層。空間連接與地圖疊加有重要區(qū)別。空間連接只是識別輸入圖層空間要素之間的位置關(guān)系,它并不改變原來的空間要素,也不創(chuàng)建新的要素。在地圖疊加過程中,一些輸入要素被分割、融合或刪去除以創(chuàng)建一個新的圖層。地圖疊加比空間連接的運算時間長,而空間連接的運算時間又比空間查詢長。121.4案例1B:提取克里夫蘭市的普查小區(qū)并進(jìn)行多邊形鄰接分析本例將用到隨書光盤中的如下數(shù)據(jù):1. shapefile文件cuyautm:俄亥俄州庫亞霍加縣的所有普查小區(qū);2. coverage圖層文件clevbnd:俄亥俄州克里夫蘭市的邊界。光盤中的所有coverage文件都是ArcInfo交換文件格式的(.e00),需要先進(jìn)行格式轉(zhuǎn)換:選擇ArcToolbox的Coverage Tools To Coverage Import From Interchange File。這里的shapefile文件cuyautm 是案例1A所得結(jié)果,但為了方便在光盤中也提供了這個數(shù)據(jù),以便讀者可以獨立于案例1A進(jìn)行下面的操作。Coverage文件clevbnd是從網(wǎng)上下載的。1.4.1提取克里夫蘭市的普查小區(qū)13很多情況下,GIS使用者需要從一個較大區(qū)域中提取一個較小的研究區(qū)。下面我們要做的就是從庫亞霍加縣中提取克里夫蘭市的普查小區(qū)。將兩個圖層疊加后發(fā)現(xiàn),clevbnd的邊界跟cuyautm邊緣處的普查小區(qū)邊界不完全重合。Cuyautm包含更多的地理細(xì)節(jié)。雖然二者的邊界不完全一致,但Cuyautm中各普查小區(qū)的重心都落在clevbnd邊界之內(nèi)。我們的目的就是要找到cuyautm圖層中那些落入clevbnd邊界之內(nèi)的重心,從而提取克里夫蘭普查小區(qū)的多邊形圖層。如果我們只是簡單地用clevbnd的邊界來剪切cuyautm,將會丟失一些cuyautm中的地理信息。1. 生成庫亞霍加縣普查小區(qū)的重心激活A(yù)rcToolbox 選擇Data Management Tools Features Feature To Point。在彈出的對話框中,選擇cuyautm作為輸入要素,將輸出要素命名為cuya_pt,并選中Inside的選項,于是得到普查小區(qū)重心的shapefile文件 cuya_pt。2. 識別區(qū)市邊界內(nèi)的普查小區(qū)重心右鍵單擊目標(biāo)圖層cuya_pt,選擇Joins and Relates Join。在對話框中,選擇Join data from another layer based on spatial location,設(shè)置源圖層(source layer)為clevbnd polygon,連接選項為it falls inside,將輸出結(jié)果命名為tmp1。圖1.5為空間連接對話框示意圖。打開tmp1的屬性表可以看到,對于城市邊界之內(nèi)的普查小區(qū),clevbnd_id = 1,而邊界之外的普查小區(qū),clevbnd_id = 0。143. 將普查小區(qū)重心信息添加到多邊形圖層添加cuyautm圖層,右鍵單擊圖層并選擇Joins and Relates Join 選擇Join attributes from a table,用tmp1作為源數(shù)據(jù)表,STFID為連接關(guān)鍵詞(目標(biāo)圖層cuyautm和源圖層tmp1都以此為關(guān)鍵詞)。4. 提取市區(qū)內(nèi)的普查小區(qū)打開cuyautm 的屬性表 單擊 Options 標(biāo)簽 選擇Select by Attributes 設(shè)置選擇標(biāo)準(zhǔn)tmp1.clevbnd_id = 1。所有在城市之內(nèi)的多邊形將被選中并加亮。右鍵單擊圖層cuyautm并選擇 Data Export Data,需要注意的是,最頂端Export一覽中為Selected features,將輸出結(jié)果命名為clevtrt。所得shapefile文件clevtrt為克里夫蘭市的所有普查小區(qū)。上面我們用到了空間連接。正如第1.3節(jié)中介紹的那樣,我們也可以用空間查詢(Selection by Location),或地圖疊加工具(ArcToolbox Analysis Tools Overlay Identity)來完成上述任務(wù)。例如,用空間查詢的方法為:在主菜單中,點擊Selection Selection by Location 使用查詢條件select features from cuyautm that have their center in clevbnd polygon 將所得結(jié)果輸出為clevtrt的shapefile文件。1.4.2識別鄰接多邊形空間分析中,定義多邊形鄰接矩陣是一項非常重要的任務(wù)。例如在第九章基于面單元的空間聚類和空間回歸時,我們用鄰接矩陣來定義空間權(quán)重,從面分析表征空間自相關(guān)。多邊形之間的鄰接包括兩種:(1)R鄰接,也稱邊鄰接,即兩個多邊形有一段共同的邊界;(2)Q鄰接,也稱廣義鄰接,指兩個多邊形有共同點或邊時即為鄰接多邊形(Cliff and Ord, 1973)。對于R鄰接,我們可以用ArcInfo Workstation里面的PALINFO命令來得到多邊形鄰接矩陣。下面的案例分析使用Q鄰接來定義鄰接多邊形,依次來演示第1.3節(jié)中介紹的空間分析工具。這里我們以一個普查小區(qū)為例,尋找完的鄰接多邊形。與第1.4.1節(jié)中第4步類似,從clevtrt圖層中選取TRACTID = 1038 的普查小區(qū),并將其輸出成名為zonei的shapefile文件。下面將基于Q鄰接來尋找zonei的鄰接普查小區(qū)。圖1.6顯示了抽樣小區(qū)周邊普查小區(qū)的TRACTID值。基于Q鄰接,普查小區(qū)1038共有6個鄰接普查小區(qū)(1026、1028、1029、1035、1036和1039)。如果是基于R鄰接,則普查小區(qū)1028將不包括在鄰接小區(qū)內(nèi)。下面是識別zonei的鄰接小區(qū)的具體過程。1. 生成緩沖普查小區(qū)在ArcToolbox中,選擇Analysis Tools Proximity Buffer。以一個較小的距離(如30米)在zonei周邊做一個緩沖區(qū),將結(jié)果輸出名為zonei_buff的文件。緩沖區(qū)的距離必須大于模糊容差(對于這里的zonei,模糊容差大約為1米),但也要足夠小,以避免超出直接相鄰多邊形的范圍。152. 從研究區(qū)中剪切緩沖區(qū)在ArcToolbox中,選擇Analysis Tools Extract Clip。選擇clevtrt作為輸入要素,zonei_buff作為剪切要素,將輸出結(jié)果命名為zonei_clip。3. 提取鄰接多邊形在ArcToolbox中,選擇Analysis Tools Overlay Erase。選取zonei_clip作為輸入要素,zonei作為刪除要素,將輸出結(jié)果命名為zonejs。所得的shapefile文件zonejs包含了zonei基于Q鄰接的所有鄰接普查小區(qū)。圖1.7演示了操作過程。圖層zonei只包含一個普查小區(qū)即1038。所得緩沖區(qū)zonei_buff只包含一個多邊形(緩沖區(qū)里面的普查小區(qū)1038在圖1.7里示出來只是為了進(jìn)行對比)。用緩沖區(qū)剪切研究區(qū)得到zonei_clip,包括普查小區(qū)1038一共七個多邊形。通過刪除操作可以從zonei_clip中去掉原來的普查小區(qū)zonei。所得結(jié)果zonejs包含6個普查小區(qū)(圖1.7中給出了各自的TRACTID值)。生成研究區(qū)的多邊形鄰接矩陣需要對所有普查小區(qū)循環(huán)進(jìn)行上述操作。我們在光盤中提供了一個AML(Arc Micro Language)程序Queen_Cont.aml來實現(xiàn)這個任務(wù),該程序是基于(沈清1994)的工作開發(fā)的。最后,我們可以用ArcCatalog刪除不需要的文件來節(jié)省存儲空間,我們主要保留cuyautm、cuya_pt和clevtrt三個文件即可,后續(xù)章節(jié)中將用到這三個文件。161.5小結(jié)總結(jié)本章介紹的GIS及空間分析技巧主要包括如下幾點:1. ArcGIS中的空間數(shù)據(jù)格式及格式轉(zhuǎn)換;2. 地圖投影及投影變換;3. 屬性數(shù)據(jù)管理(創(chuàng)建、編輯、刪除數(shù)據(jù)庫及數(shù)據(jù)列);4. 屬性連接(包括屬性數(shù)據(jù)與空間數(shù)據(jù)的連接);5. 繪制屬性地圖;6. 空間連接;7. 屬性與空間查詢;8. 地圖疊加操作(剪切、緩沖區(qū)、相交、合并、刪除)。其他重要的操作還包括:從公共資源中查找空間及屬性數(shù)據(jù),計算shapefile文件中多邊形的面積,從多邊形圖層中提取重心來創(chuàng)建一個點圖層。后續(xù)章節(jié)將用到上述技巧。17本章也介紹了一些基本概念如數(shù)據(jù)表之間的各種關(guān)系(一對一、多對一、一對多、多對多),各種空間連接,空間查詢、空間連接與地圖疊加之間的區(qū)別。讀者如果想進(jìn)行更多的基于GIS的制圖練習(xí),可以下載某個自己熟悉地區(qū)的普查數(shù)據(jù)和TIGER數(shù)據(jù),然后繪制該地區(qū)的一些人口統(tǒng)計屬性(人口、種族、年齡、性別等)和社會經(jīng)濟(jì)變量(收入、貧困狀況、教育水平、家庭結(jié)構(gòu)、住房屬性等) 。附錄1 用ArcGIS輸入/輸出ASCII文件小的ASCII(文本)格式的數(shù)據(jù)文件很容易轉(zhuǎn)換成ArcGIS可以識別的格式。一般來說,我們可以用Microsoft Excel來打開文件,在最頂端添加一行來作為列名,并將其保存為CSV文件(逗號分隔的文本文件)。CSV文件可以用ArcGIS讀取。一個比較大的問題是,按這種方式處理時,沒法控制每列數(shù)據(jù)的類型及格式。例如,在ASCII文件中,所有普查小區(qū)編碼或STFID值看起來都是數(shù)值型的(numeric)。從ASCII文件轉(zhuǎn)換過來的CSV文件自動地定義各列為數(shù)值型,從而使它很難與從TIGER文件提取的GIS圖層進(jìn)行連接,因為在TIGER圖層中,這些列通常定義為字符型(character)。怎樣在ArcGIS 中輸出ASCII 文件呢? 在ArcMap中,我們可以打開一個數(shù)據(jù)表(可能是空間要素的屬性數(shù)據(jù)表,也可能是一張獨立的表),選擇Options Export,將其輸出成dBase格式的表格。然后,我們可以用Microsoft Excel打開dBase文件,再將其保存為ASCII文件。另外一種方法是,使用ArcToolbox Spatial Statistics Tools Utilities Export Feature Attribute to Ascii,將要素坐標(biāo)及所選屬性值輸出成空格、逗號或分號分隔的ASCII文本文件。但局限的是,我們每次只能輸出一個變量(及其坐標(biāo))。Microsoft Access也常常用于屬性數(shù)據(jù)管理,即輸入、輸出ASCII文件。下面介紹如何用ArcInfo Workstationk來輸入/輸出大型ASCII文本文件。1. 將ASCII文件轉(zhuǎn)換為INFO文件a. 在ArcCatalog中,打開將用于保存新文件的目錄或工作空間(workspace),選擇File New INFO table來創(chuàng)建一個新的INFO文件(比方說可以命名為ninfo),定義所有的列(名稱、數(shù)據(jù)類型、數(shù)據(jù)格式)。b. 啟動ArcInfo命令行界面:點擊電腦的開始菜單 程序 ArcGIS ArcInfo Workstation Arc。輸入w 以切換到相應(yīng)的工作目錄(例如:w c:Quant_GISproj1),輸入tables以激活TABLES模塊。c. 在TABLES模塊下,輸入select ninfo來選擇剛剛新建的INFO文件。d. 假設(shè)tfile是需要轉(zhuǎn)換的文本文件。輸入add from tfile來添加所有數(shù)據(jù)。轉(zhuǎn)換后的數(shù)據(jù)可以通過list命令來查看。18e. 輸入quit以退出TABLES模塊,再輸入quit以退出ArcInfo Workstation。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論