[QGIS教學系列]如何使用QGIS計算圖徵的面積和長度
關鍵字: #QGIS教學 #屬性資料操作 #屬行欄位計算 #地理屬性提取 #幾何屬性
文章目錄
[QGIS新手教學系列-計算圖徵的面積和長度]
QGIS是一個功能強大的開源地理資訊系統,其中一項基本功能是計算圖徵的面積和長度。本文將介紹如何使用QGIS來進行這些計算。
1.練習資料介紹
這次的練習資料,我們採用 1.台灣的縣市行政區圖 以及 2.台灣的國省道(含快速道路),分別進行面積和長度的屬性資料計算新增。
相關檔案下載請按這跳轉
2.計算圖徵的面積及長度
首先我們先導入下面下載資料分別為:
ROAD_國省道(含快速公路)_1120104.shp
縣市圖.gpkg
本文提供兩種計算幾何屬性的方法
1. 利用 Toolbox –> Add Geometry attritutes
點上工具的齒輪圖案(Toolbox)–>搜尋Add Geometry attritutes,選擇要計算的圖層,計算方式採用該圖層的CRS即可。
隨後分別針對縣市圖以及國省道進行計算,這邊預設產出一個暫存圖層,有需要的話可以在下方指定儲存路徑進行輸出,計算完成後我們打開屬性資料表查看。
上圖為國省道的屬性資料,長度屬性已經正確的被加入屬性表裡,同時數據與資料自帶的長度屬性一致。
計算Polygon的屬性時,會同時新增面積屬性(Area)以及周長屬性(Perimeter)。
2. 利用 Field Calculator
另一個方法是透過Field Calculator計算進行幾何計算,我們進入屬性資料表後,可以點選上方的小算盤進入Field Calculator,中間可以進行搜尋幾何屬性,例如我搜尋area,其中帶有$符號的表示該圖徵的屬性變數,輸入好欄位名稱、型態後按下確定即可新增一列關於面積的資料。
****2023/03/20更新
採用空間屬性計算幾何特徵的時候,會受到圖層原本的CRS影響,例如說想要把EPSG:4326圖層,採用EPSG:3826進行計算的時候,可以採用以下表達式進行轉換並直接計算出面積:
area(transform($geometry,'EPSG:4326','EPSG:3826'))
3. 方法比較
兩種方式都可以很好的計算幾何屬性,但由於計算演算法可能有所差異,因此部分時後計算結果在小數點後幾位會開始有所差異,若仔細看結果可以看到連江縣差異很大,可能是Multi-polygon設定上的問題,造成部分面積沒有被計算到,這點有待討論。
另外同時計算面積和長度時會考慮到所用的CRS,當CRS的橢球體參數有被正確設定時,計算結果採用橢球體進行計算,若非則當作平面進行計算。
練習檔下載
https://drive.google.com/file/d/1igBQoVc0Wgx3CYKCnLv91XJ_UeMX8-7b/view?usp=sharing
其他教學
如果有需要相關的GIS家教課程也歡迎Email給我