查看原文
其他

详细讲解ArcGIS土地利用转移矩阵的制作(附练习数据下载)

甜橙 GIS前沿 2022-12-04


本文以吉林西部1980年和2000年的土地利用矢量数据为例,运用多种方法获取土地利用转移矩阵。


矢量数据


1.数据预处理


1.1二级类型重分类

 

图1.1吉林省西部八十年代中后期土地利用矢量数据

 

图1.2吉林省西部八十年代中后期土地利用矢量数据属性表


表1数据代码说明(图片点击可放大)


根据实际需要,将土地利用类型划分为几大一级类型:1-耕地、2-林地、3-草地、4-水域、5-城乡、工矿、居民用地和6-未利用土地,通过观察属性表可知我们只需要提取LAND1980-ID字段的第一个数字,然后新建一个id字段将新值赋予即可。新建id字段,右键id字段点击字段计算器利用字符串函数Left()提取第一位数字,公式Left( [LAND1980-ID],1)表示提取[LAND1980-ID]字段从左往右的第一位字符。

 

图1.3字段计算器

 

图1.4重分类土地利用类型要素属性表


1.2同一地类融合


根据需要将相同土地利用类型的零碎地块融合便于后续的实验和分析。打开数据管理工具/制图综合/融合,依次对两期数据进行融合(注意融合字段选择id字段,其余默认)。

 

图1.5融合工具条对话框

 

图1.6融合结果要素属性表


1.3相交


打开分析工具/叠加分析/相交工具;输入1980和2000年处理后的土地利用矢量要素,选择输出路径,其余默认,点击确定即可。

 

图1.7相交工具对话框


图1.8相交结果要素属性表


拿上图高亮选中的这行为例,表示此面要素所表示的地块2000年的土地利用类型是耕地的,2020年的土地利用类型转变为林地。实验用数据因为已有投影坐标系故在相交叠加过程中已经为相交结果计算好了面积,如果没有计算,为了看出2000至2020年土地利用类型的变化情况,则可以在得到的相交图层属性表里,添加字段,命名为area,类型选择双精度,选择合适的投影坐标系,进行面积计算即可。


2.土地利用转移矩阵


2.1Excel处理


在要素属性表界面表选项下拉框中中选择导出,再更改保存路径、名称和类型,将保存类型更改为dBASE表,在Excel中打开导出的表格。或者我们可以把相交后的图层dbf文件复制一份,后缀改为xls,即可在Excel里打开。点击插入/数据透视表,设置相关参数,然后调整格式及字体等,即可得到如下土地利用转移矩阵。

 

图1.9插入数据透视表


图1.10土地利用转移矩阵


2.2ArcGIS处理


要制作土地利用转移矩阵我们也可以利用ArcGIS的数据透视表工具,点击数据管理工具/表/数据透视表工具。输入我们第一步1980年和2000年相交得到的结果数据,然后在输入字段(列标签)勾选1980年的id字段,透视表字段(行标签)在下拉框中选择2000年的id_1字段,值字段选择面积Area字段,设置输出路径及名称,点击确认即可。再将结果表格导出,用Excel打开,然后调整格式及字体等,即可得到相同的土地利用转移矩阵。

 

图1.11“数据透视表”工具对话框


图1.12数据透视表处理结果


栅格数据


在很多情况下我们在各大官网上下载的第一手数据是栅格数据,以下我们将从另一种方法利用ArcGIS制作土地利用转移矩阵。(为了便于学习和对比我们通过矢栅转换将上一种方法的数据转换为栅格数据用于接下来的的实验和分析)


点击转换工具/转为栅格/面转栅格工具输入原始的矢量数据,注意值字段选择LAND2000-ID(即土地利用类型代码字段),像元大小可酌情设置(本例设置为10),设置输出位置及名称,其他默认即可。

 

图2.1“面转栅格”工具对话框

 

图2.2矢栅转换结果


1重分类土地利用类型


首先加载两期栅格数据:根据需要,将若干类别,划分为几大类别:在Excel中新建表格,将原地类编码和重分类后编码一一对应,这里分被设置属性名为【Value】和【RecCode】,保存为【.csv】、或者【.txt】后加载进当前工作空间。

 

图2.3重分类编码对应表格


点击空间分析工具集/重分类/使用表重分类,利用 【Reclass by Table】工具进行重分类,分别输入1980和2000年的土地利用栅格数据,再输入重映射表code,起始值字段和目标值字段都选择Value字段(即土地利用类型的二级编号),输出值字段选择ReCode字段(即土地利用类型的一级编号或者说是重分类的结果字段),勾选将缺失值更改为NoData,设置输出路径及名称,点击确认即可。

 

图2.4“使用表重分类”工具对话框

 

图2.5使用表重分类结果


2利用栅格计算器合并多时段属性信息


 此处利用栅格计算器合并属性信息。思路是:单个像元从1980年的耕地【Value=1】转变为2000年的水域【Value=4】,则可以用Value1980*10 +Value2000 得到新值为14,(当然,此处的*10是可以根据实际情况考虑的,当地类数较多时乘100也可以)即公式为【"Re_R1980" * 10 + "Re_R2000"】打开栅格计算器(可以批处理 ,若需要批处理功能即需找到所用工具,右键,选择Batch,打开批处理面板)。

 

图2.6“栅格计算器”工具对话框


如下图所示,得到结果的属性即包含了土地利用的变化情况。

 

图2.7栅格计算结果


3计算面积并导出


打开空间分析工具集/区域分析/面积制表【Tabulate Area】工具,计算面积。在输入栅格数据或要素区域数据栏中输入栅格计算的结果,区域字段选择栅格图层的Value字段,输入栅格数据后要素类数据选择研究区的范围数据(若无研究区范围数据可使用“3D分析工具集/转换/由栅格转出/栅格范围工具”对栅格数据提取研究区数据),类字段选择OID或者新增一个字段,只需赋予要素相同的属性值,然后在【Class Field】选择时,选择新增字段即可,设置输出路径及名称,导出的表最好存放在.gdb文件中且表名须以字母开头。如下图可以看出,有16818km²耕地未发生变化,174.5 km²的1(耕地)转变为5(建设用地)

 

图2.8“面积制表”工具对话框


 

图2.9面积制表结果


然后用【Table to Excel】导出至EXCEL表中即可。在此之后可以在Excel或者ArcGIS中的【数据透视表】或者Offset函数等调整格式,转为转移矩阵。在要素属性表界面表选项下拉框中中选择导出,再更改保存路径、名称和类型,将保存类型更改为dBASE表,在Excel中打开导出的表格。或者我们可以把相交后的图层dbf文件复制一份,后缀改为xls,即可在Excel里打开。设置相关参数,然后调整格式及字体等,即可得到如下土地利用转移矩阵。

 

图2.10土地利用转移矩阵


数据下载

进入本公众号后台
发送数字1771获取下载链接文件名:2-21土地利用转移矩阵


- END -


倾斜实景三维中的"我的世界"
推荐 | ArcGIS高级制图培训PPT(附下载链接)
GIS制图 | ArcGIS专题制图及可视化练习教程.docx
测绘人必看 | 1:500 1:50000?常见的地形图比例尺竟然这么有内涵
实操指南!ArcGIS制图成果一键转换迁移

戳原文,更有料!

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存