
土地利用景观转移矩阵方法汇总.docx
7页本文格式为Word版,下载可任意编辑土地利用景观转移矩阵方法汇总 最简朴的土地利用/景观转移矩阵的制作(转)(2022-05-19 03:36:24) 写文章的过程中,同样也用到了土地利用/景观转移矩阵转移矩阵的制作好多软件可以实现,有Arcview、Arcmap、还有人用matlab但是网上都写的都不细致,在这里,本文才用arcmap的叠加操作+excel的数据统计功能,可以轻松完成这一过程相信看完了本文,初学者或者对GIS了解不多的人,也能轻松的制作出转移矩阵 方法一: 1 数据打定 打定好两期的coverage或shape文件留神:拓扑关系要建好,不然无法计算),采用Arcmap开启上述两期文件 2 叠加操作 选择Arcmap里面的“ArcToolbox”按钮下面的“Analysis Tools”工具下面的叠加分析模块(Overlay)下面的交错分析功能(Intersect)选择已经开启的两期数据举行叠加分析叠加的结果存在一个可以找到的地方同时,把叠加后的结果添加在Arcmap里 3 输出叠加文件的属性数据 A、右键开启intersect产生的矢量文件的数据属性表(open attribute table)。
B、点击“options”按钮,选择“add field”,然后给出一个新name“newarea”,数据类型为double C、右键点击刚刚产生的“newarea”,并选择“calculate values” D、然后点击“field calculator”对话框里面的“Advanced”后选择“help”将 Dim Output as double Dim pArea as Iarea Set pArea = [shape] Output = pArea.area 拷入到“field calculator”对话框下面的空白处 E、在对话框“field calculator”最下面的空白处填上“output” F、在属性表点击“options”按钮,→export(导出),属性以.dbf格式结果存储 4 Excel举行转移矩阵制作 A、方才存储的.dbf文件可以使用excel开启,开启的结果重新保存为.xls(excel)文件 (dbf文件不能保存) B、重新开启刚存储的excel文件 C、选中全体数据,选择数据\\数据透视表和数据透视图。
将两期数据的id值分别拖入行列字段,然后以‘newarea’字段作为数据项拖入计算区域得到的便是转移矩阵假设察觉矩阵的形式不美观,可以对单位举行修改 方法二:作某一地物与其他不同年份地类 例如: 1、做水体和其它年份分类地物的交集 A. 分别开启刚刚产生的水域多边形和该地区其他年份的分类矢量文件 B. 选择gis里面的“AacToolbox”按钮下面的“Analysis Tools”工具下面的叠加分析模块(Overlay)下面的交错分析功能(Intersect) C. 分别输入上面抽出的水域多边形和该地区其他年份区的分类后的多边形举行intersect分析 D. 右键开启intersect产生的矢量文件的数据属性表(open attribute table) E. 点击“options”按钮,选择“add field”,然后给出一个新name“newarea”,数据类型为double F. 右键点击刚刚产生的“newarea”,并选择“calculate values” G. 然后点击“field calculator”对话框里面的“Advanced”后选择“help”将 Dim Output as double Dim pArea as Iarea Set pArea = [shape] Output = pArea.area拷入到“field calculator”对话框下面的空白处 H.在对话框“field calculator”最下面填上“output” 2、然后分别计算水体在该地区其他年份年转入和转出处境 A.点击“potions”下面的“select by attribute”按钮,并选择“GRID_COD_1” B.令GRID_COD_1=1 点击apply,此时会统计出该地区其他年份年依旧为水域的多边形 C.右键点击“newarea”选择统计功能(“statistics”),就会得到从然为水域的面积 D.分别计算出GRID_COD_1=2(林地)、3(草地)、4(城镇点)、5(耕地)、6(滩涂地)的面积就得到从由水域转入的面积。
以此类推 网上有人还采用的方法: 1、 Erdas:erdas--main--interpreter--gis analysis--matrix输入两个年份的分类图,然后举行重编码即可 2、 Arcview:可以作个运算,其中一期的图*10或者100或者1000(土地利用类型取1位数时候×10,两位100),然后再加上另一期的土地利用图得出一个图的属性,断定12,15,或者1221,或者1531之类的数据,理应就可以实现了 3、 Matlab:听说,还没有亲眼见过,据说可以告成 4、ArcGIS:在一期数据的根基上,绘制出其变化的片面(很繁杂,工作了量很大) 根据你的数据类型选用不同的数据生成方法 若你的数据是Raster格式:那么有如下方法 1 Erdas Imagine----Interpreter---Gis Analysis---Matrix,输入两个时相的Raster数据即可 做这一步之前记得先对两时相的数据举行重编码(nterpreter---Gis Analysis---Recode) 一般运行假设展现错误断定是重编码没做好,请持续查证。
2 先在Erdas中利用 Modeler 计算如下公式 NC(I,J)=NC(I)*10+NC(J),(J>I) 其中:NC(I,J)表示i,j 两年份的土地利用变化图;NC(i)表示i年份遥感分类影像;NC(j)表示j年份的遥感分类影像 在此计算的根基上,将以上变化影像图转化为BIL格式,再利用ARC/INFO GRID模块将影像转为GRID格式,然后利用GRID模块中的属性表(vat)查看命令对影像灰度值举行统计,结果得出土地利用转化举证注:此方法本人尚未实现过,不知可行否) 若数据是Vector格式 1 Erdas Imagine----Interpreter---Gis Analysis---Matrix,输入两个时相的Vector数据即可 此时留神输出栅格大小不应设的太小要不一运行就会提示你的空间缺乏 做这一步之前,请做好前期的地理编码 2 ArcView3.3加载 spatial analysis模块 把两时相的Vector图转成grid格式(当然中间有一些单位的设置根据你做的图的辨识率来设置即可)analysis---mapcaculate直接计算即可。
3 把两期解译完的Vector文件在arctoolbox——overlay——union中叠加,留神:两个文件不能用同一个字段名,譬如一个用93Type,另一个时相那么用00Type 叠加后的文件在Arcmap中开启,选中文件,然后点右键——Property——空间查询,输入条件语句,譬如:93Type=‘1’And 00Type=‘2’;查询结果即为第一种类型转化为其次种类型的图形,可以另建一图层譬如:12,把查询结果复制到12图层上统计出面积,依举行,就可以得到土地利用类型转移矩阵 方才看了缘老大发的帖子,题目是:利用arcigis生成土地利用转移矩阵方法流程讲的很细致最近我也用了好多方法来做,其中个人认为最简便的方法是利用arcgis的spatial analyst tools---zonal---tabulate area 细致步骤请见------方法很简朴另指点(矢量,栅格都可以哦1.找到zonal--tebulate area→ ) 2.导入两期的矢量或栅格图→,你就点OK,让arcgis运算即可 3.结果显示,在arcgis里导出*.dbf→(这就是结果了)。
导出来你用excel开启,想插到那里就插到那里 — 7 —。












