最近身體不適,靜下心來看了一下以前收集的電子書。下面是《ArcGIS地理信息系統教程_第5版》(李玉龍)第5章“查詢”的讀書筆記。
1.查詢的常見應用:
選擇感興趣的要素:查找哪些要素滿足特定標准。例如當前成都哪些房價是本人能夠承受的價格范圍?應該沒有。
探索圖案樣式:從選定的要素中創建地圖,並檢查其空間分布。例如到底是哪些位置排污量大,造成如此重度污染?
為進一步分析而分離要素:例如要分析個人的效益情況,先要把工資高、干活少的員工選擇出來。
探索空間關系:哪趟火車能夠到達目的地附近50公里城市?
創建柵格查詢:矢量查詢用得非常多,但柵格也可以按像元進行查詢。例如從土地利用類型圖上查詢近3年本市建築范圍變化的區域。
查詢主要包括空間查詢(Spatial Query)和屬性查詢(Attribute Query)兩種。
2.屬性查詢
屬性查詢遵守SQL語法,但需要每個表達式條件必須包含一個字段名(即使為相同字段),例如SQL無法正確識別表達式”Gay”=’工資高’ AND ‘干活少’,而應當寫成”Gay”=’工資高’ AND ‘”Gay”=‘干活少’。
除了AND、OR、NOT外,有時XOR也有用。
當遇到多個表達式時,用括號來區分判斷的先后順序;或者使用“在當前選擇集中選擇”來一步一步地選擇。
模糊查詢時,記住通配符,在Shapefile文件文件中’%‘表示任意個字符,’_‘表示一個字符;但在數據庫中’?‘表示任意個字符,’?‘表示一個字符。
例如:"NAME" LIKE ‘% LiJie%’,表達中第2個%,也許有人認為是多余的,通常情況是這樣的。但是這確定避免出現一種特殊情況,就是姓名后面多出一些意外的空格,以致於無法選擇正確的內容。
3.空間查詢
空間查詢是GIS所獨有的一種功能強大的工具,是基於空間關系進行選擇。例如大家熟悉的平移和縮放也是一種特殊的空間查詢類型。平移和綻放操作基於XY坐標定義了一個興趣矩形,並提交軟件返回落入其中的所有要素。
因為要素類的精確度和幾何准確度不同,經常會發生真實世界中的一致的兩個對象(例如河流標尺和河流),當在GIS中比較其XY坐標時無法完全精確匹配。當評估空間條件時,指定搜索半徑非常有用,可以使用要素不需要精確匹配。
以城市與河流相交的問題為例。國家比例尺下的城市通過點來表達,而河流是通過廣義線來表達的。即使城市真的與河流相交,如果點發生在表示西游記的線上也只是幸運,應用搜索半徑是一種解決方案,假定典型的大城市可能通過一側的10km2所表示,那么設置搜索半徑為5km也許能夠生成一種可以接受的結果。即使如此,可能還是會遇到一些錯誤的結果(正值的相關與負值)。
必須總是記得真實世界中的實體與GIS所表現的實體之間的差別,並緩和由於比例尺或精度所導致的問題。例如在這種情況下,用戶可能繼續執行了查詢,但是然后通過聯機影像來檢查每個選定的城市,從而確保存在正確的關系。
4.空間關系
包含:檢查一個要素是否包含另一個要素。分為以下六種情況:
A嚴格等於B(具有完全相同的幾何特征),對應are identical to(A相等B);
B所有要素完全被A環繞,對應A completely contains B(A完全包含B),也對應B completely within A(B完全位於A范圍內);
B位於A內,但它們共享一條邊,對應contains(A包含B),也對應B within A(B位於A范圍內);
A中某個要素的中心是否位於B中某個要素范圍內,對應A have their center in B(A 中心位於 B)。
相交:返回A中接觸、穿越或疊加B中要素任何部分的任何要素. A are crossed by the boundary of B (A被B的邊界所穿越),返回A中只穿越B中要素邊界的要素。
鄰近:檢測A中要素與B中要素之間有多么接近。最常見的檢測是are within a distance of(在……距離范圍內),選擇A中位於B某個特定距離范圍內的要素。例如返回學校周圍2公里范圍內所有地塊。鄰接(Adjacency)是一種特殊的鄰近情形,距離變為0,實際上要素的邊界彼此之間接觸在一起,這些條件為share a line segment with(與……共享一條線段)和touch the boundary of(接觸……的邊界)運算符所覆蓋。
5.要素選擇方法
在ArcMap中提供了3種要素選擇方法:交互式選擇,按屬性選擇和按位置選擇。
處理包含選擇的圖層,在ArcMap中有一個非常重要的原則:圖層要素選中,只會處理選擇的部分,否則全部處理。
交互式選擇方法:
創建選擇圖層:選擇要素后可以右鍵創建選擇圖層,選擇圖層顯示在原圖層的上方,其具有幾種優勢,不僅可以為其指定自己的符號,而且能夠獨立於原始圖層之外進行顯示。如果選定的集合是復雜分析的焦點所在,那么該圖層會為未來使用而保留選定的要素,從而避免意外清除這個選擇而不得不再次執行它的風險。選擇圖層可用於將相同的要素集合輸入到不同的工具或命令,對於 查看和記錄長且復雜的系列查詢的中間結果很有用。用戶也可將該圖層保存為圖層文件,然后在其他地圖文檔中使用。當對源圖層或選擇圖層進行編輯時,同時改變。
因為基於要素類,所以不會創建要素的多個副本,也舉改變源數據。當需要臨時副本的時候,而要素來自於自己的數據或者多個用戶所共享的機構數據庫,這是最好的解決方案。
定義查詢:定義查詢是圖層的一種屬性,類似於選擇圖層,但是不從選定的集合創建,查詢實際上執行的目標是定義哪些要素包含在圖層中。像圖層一樣,定義查詢指向原始數據庫,而不是創建其副本,並且分享相同的優點和缺點。