一 基本思路
柵格數據 -> 矢量數據 -> 對矢量數據進行投影 -> 計算面積
這里的計算柵格圖面積的方法本質上和計算矢量圖面積的方法差不多,只是多了一步柵格轉矢量。
二 操作步驟
以北京市為例來計算面積。
下面一張北京市的土地利用現狀柵格圖。
1.柵格數據轉換為矢量數據
轉好之后的結果如下圖所示:
2.對矢量數據進行投影
這里選擇的是UTM投影(北京市位於50N帶,下面框起來的與投影相關的一些參數,可以看到長度單位為米),也可以選擇高斯投影等其他投影。
投影后的圖如下:
3.計算總面積
打開投影后的圖的屬性表,可以看到圖中每一個面狀要素的長度和面積已經自動計算出來了,把每個塊的面積加起來得到的總和即是北京市的面積。
屬性表:
求和:
可以看到總面積為16393878564.519615平方米,約為16393.87平方千米(公里)。
4.計算每一類用地的面積
從上圖中,可以看出北京市共有九種不同利用類型的土地。
利用ArcToolBox中的summary statistic工具可以計算每一類用地的總面積。計算思路為:根據土地利用類型(這里為gridcode)對面要素分類 -> 計算每一類下所有面要素的面積之和。
打開生成的表格,可以看到每一類用地的面積已經計算出來了。
三 注意和問題
1.以上操作,數據都是放在空間數據庫中的,打開投影后的圖的屬性表,可以看到arcgis已經自動添加了shape_length,shape_area字段。如果投影后的圖以shp文件的形式存放,有時不會自動添加shape_length,shape_area字段,有時出現的shape_length,shape_area字段中保存了一些“錯誤”的值(這些值不知道是如何得到的)。因此,如果投影后的圖以shp文件的形式存放時,最好自己添加一個面積字段,然后通過如下所示的方法得到每個面要素的面積。
2.計算面積和長度都要在投影坐標系下計算,如果圖中只有地理坐標系是無法直接計算面積和長度的。
3.上面采用的是UTM投影,也可以采用高斯投影等等。但UTM投影,高斯投影都是等角投影,因此面積應該會有誤差。最好的方法是采用等面積投影,等面積投影相關資料很少,我查找了很多地方,都沒找到清楚的可以使用的等面積投影方法。