本文转载自《https://blog.csdn.net/ceibake/article/details/77924315》
文章目录
* [一、不同时期的土地利用矢量数据,如何分析其图形及属性变化?](#_9)
* [二、如何统计不同土地利用类型的面积?](#_71)
* [三、如何统计不同区域各类土地利用类型的面积?](#_79)
* [四、如何将行政区划的信息追加到土地利用数据中?](#_87)
* [五、如何制作土地利用变化转移矩阵?](#_106)
本篇主要是针对矢量数据的分析。
统计的操作视频,点击这里观看。 用地变化分析操作视频,点击这里观看。 转移矩阵操作视频,点击这里观看。
一、不同时期的土地利用矢量数据,如何分析其图形及属性变化?
土地利用图(左图为1993年,右图为2003年)
思路如下:
可以先对2个图层进行Union操作,然后在结果中新建一个字段,分析属性的变化。如果属性没变,就赋值为1,如果属性变化了就赋值为0。
操作步骤如下: 1、将两个图层的属性放到一个图层里。
使用GP工具Union(联合)。注意JoinAttribute,选择All,也就是结果中包含两个图层的所有字段。
结果属性表如下:
Unoin可以将数据的属性合并到一起,同时,图斑不一样的区域也可以拆分开。见下图:
2、新建一个短整型字段。
3、使用字段计算器,比较两个字段的内容。如果属性没变,就赋值为1,如果属性变化了就赋值为0。这里我们定义isSame()函数,在函数中比较字段值,相同就赋值1,不相同就赋值0。
Python代码如下:
Pre-Logic Script Code中写:
def isSame(x, y):fieldA = str(x)fieldB = str(y)if fieldA == fieldB:return 1else:return 0<div class="hljs-button {2}" data-title="复制" data-report-click="{"spm":"1001.2101.3001.4259"}"></div>1234567
变化中写:(比较的是Class_Name和Class_Name1两个字段)
isSame( !Class_Name! , !Class_Name_1! )<div class="hljs-button {2}" data-title="复制" data-report-click="{"spm":"1001.2101.3001.4259"}"></div>1
简单方法: Python语法中比较字段值是否相等,可以用 == 。注意,中间不能有空格。所以表达式可以简化为: !Class_Name! == !Class_Name_1!
结果如下:
如果想知道变化的图斑是从什么类型转为什么类型,可以新建一个文本型字段,将土地利用类型的两个字段赋值过去。
结果如下:
二、如何统计不同土地利用类型的面积?
使用GP工具Summary Statistics(汇总统计数据),统计各类的总面积。
结果是一张统计表,如下:
三、如何统计不同区域各类土地利用类型的面积?
可以使用GP工具Tabulate Intersection(交集制表)进行统计。
结果如下:
四、如何将行政区划的信息追加到土地利用数据中?
有一份行政区划矢量数据,希望知道每个图斑隶属于哪个行政区划。数据可以是行政区域,也可以是坡度及其他数据。
一个图斑可能会跨区域,如果图斑需要切分,一部分属于行政区划A,另一部分属于B,可以使用GP工具Intersect(相交),参数中的JoinAttribute,选择All。结果如下:
如果不希望图斑被切分,在属性表中记录属于A、B、C区,可以使用GP工具Spatial Join(空间连接)。
在区域名字段上右键,合并规则选择连接,其他设置默认就可以了。
结果如下:
五、如何制作土地利用变化转移矩阵?
对于分类后的土地利用栅格数据,在ENVI里很容易计算土地利用变化矩阵。针对矢量数据,我们可以在ArcGIS中统计数据,然后在Excel中制作矩阵。
思路如下:
1、对两期土地利用数据分别进行融合Dissolve(融合)操作,使每个土地利用类型仅有一条记录; 2、再对融合的结果进行Intersect(相交)操作,分析土地利用变化; 3、转出为Excel表; 4、在Excel中采用透视表进行统计。
模型如下:
针对上面的操作思路,制作了一个Model模型,转出结果为Excel。模型内容如下: 模型下载网址,链接:https://pan.baidu.com/s/1pKNHDeb 密码:n9hy
双击工具箱中此工具,界面如下:
关于土地利用转移矩阵模型,适用ArcMap 10.2及以上版本。如何打开模型,编辑模型,见下图操作。大家可以参考模型中的工具,自己来制作这个模型。模型构建参考帮助文档:在模型构建器中执行工具。
结果为一个Excel表格,制作透视图方法如下:
1、点击数据透视图,然后选中所有区域的数据;
2、先勾选第一期的土地利用类型字段;
3、再将第二期的土地利用类型字段拖拽到透视图的第一行位置;
4、最后将面积字段拖拽到透视图的中间空白位置;
再修改下字头内容,添加下边框,土地利用转移矩阵就做好了。