测品娱乐
您的当前位置:首页ArcGIS空间分析模块学习指南

ArcGIS空间分析模块学习指南

来源:测品娱乐
ArcGIS空间分析模块学习指南

ArcGIS空间分析模块学习指南

栅格数据和⾮栅格数据的复合应⽤是GIS应⽤中的⼀个趋势,⽬前多数GIS软件关注的是⽮量数据的分析和应⽤。随着GIS和遥感以及DEM的不断发展,栅格数据在GIS中将扮演越来越重要的⾓⾊。这⼏天,兔⼋哥认真的学习了⼀些这⽅⾯的知识,并正在学习ArcGIS Spatial Analyst,下⾯将学习⼼得和⼤家共享。对于这个模块,兔⼋哥也是初学,难免会出现问题,请⼤家指正!

第⼀节空间分析扩展模块简介1.1 简介

ArcGIS空间分析扩展模块提供了功能强⼤的空间建模和分析⼯具。利⽤这个扩展模块可以创建基于栅格的数据,并对其查询,分析,绘图。在空间分析模块中我们可以采⽤的数据包括影像,Grid以及其他的栅格数据集。1.2空间分析扩展模块功能

下⾯列举⼀些使⽤该模块可以实现的功能:·根据要素⽣成Arcinfo Grid

·从要素按照⼀定距离或临近关系⽣成Raster·由点状要素⽣成密度栅格图·由离散要素点⽣成连续表⾯

·根据要素派⽣出等⾼线,坡度图,坡向图和⼭体阴影·进⾏基于栅格数据的分析

·同时在多个栅格数据上进⾏逻辑查询和代数运算·进⾏临域和区域分析·进⾏栅格分类和显⽰·⽀持很多标准格式1.3 空间模型

模型就是把源域的组成部分表现在⽬标域中的⼀种结构。源域中被表现的部分可以是实体,关系,过程或者其他感兴趣的现象。建模的⽬的就是对源域的简单化和抽象化。因此空间建模就是对地⾯上的地理实体进⾏简单和抽象化进⾏表⽰的过程。模型有两类:表征模型和过程模型。前者是⽤来描述物体,⽽后者则关注是物体间的相互作⽤和描述过程。GIS过程模型,它可以使⽤⼀个流程图来表⽰。

相关数据下载:第⼀部分第⼆部分第⼆节在ArcGIS中进⾏空间分析

2.1分析环境设置

在进⾏空间分析前,必须对设定分析范围,存储形式,存储使⽤的坐标系统,输出Grid的⼤⼩,缺省的输出⽬录。下⾯将⼀⼀对此进⾏说明(这些设置是在Sptial Analyst⼯具条---->Spatial Analyst菜单---->Options中设置)?坐标系统

和⽮量数据类似,没有校准的栅格数据是没有太⼤使⽤价值的。很多基本的空间分析操作都要求你的数据指定坐标系统。同时可以指定输出结果的坐标系统。如下图所⽰,分析输出将可以采⽤输⼊数据的坐标系统或者当前数据框的坐标系统。

?输出栅格形式

缺省情况下,⼤多数的空间分析操作⽣成的栅格是ArcInfo的Grid格式,⽣成的Grid有临时和永久两种形式。这个在后⾯的部分中将详细讲到。Grid的名称最多12个字符,⽽且在中间不允许空格,只允许包括A~Z和0~9,这些字符(这个和Coverage的存储类似,经常我们⽣成的Coverage有问题,可能就是因为名称或者路径中出现了空格,兔⼋哥注)。?设置分析范围

在空间分析Options中,可以设置空间分析的范围,可以⽤户指定坐标范围,⼀般情况是选择等同于某个图层的空间范围或者当前显⽰范围

?设置Cell⼤⼩

在空间分析中,分析结果缺省的cell⼤⼩为输⼊数据的最⼤cell的⼤⼩,⽤户可以指定cell⼤⼩或者指定输出cell等同于输⼊的某个数据的cell⼤⼩。兔⼋哥提⽰你,减⼩cell的⼤⼩可以提⾼数据的精度,但是数据量会以⼆次⽅增长。如果你指定的输出cell⼤⼩⼩于输⼊分析数据的cell⼤⼩,得到的所谓精度是没有意义的。

除了上述设置外,还要对⼯作⽬录进⾏设置和分析Mask(掩码),分析掩码是⽤来标识分析中操作的部分,所以分析掩码中的空值单元将被屏蔽掉。2.2 表⾯分析⼯具

在ArcGIS提供的空间分析⼯具中,最常⽤的就是表⾯分析⼯具,⾸先和兔⼋哥⼀起看看表⾯分析吧。ArcGIS提供了我们常⽤的表⾯分析功能:⽣成等值线(Contour),坡度(Slope),坡向(Aspect),⼭体阴影(hillshade),可视范围(Viewshed)以及⼯程上常⽤的计算⼟⽅量(Cut/Fill),这些功能的原理⼤家可以参考《地理信息系统基础》龚健雅科学出版社2002.2.2.1 ⽣成等值线(Contour)

⾸先我们⼀起看看什么是等值线,所谓等值线就是连接等值点的线段,⽐如我们常见的等⾼线,等温线等等。关于等值线的详细情况⼤家可以随便找⼀个GIS 书看看就明⽩了。使⽤等值线可以很容易的看出趋势变化,⽐如从等⾼线上很容易看出⼭⾕,⼭脊以及地形的起伏。下⾯我们⼀起看看如何利⽤Raster(Grid)⽣成等⾼线。

Step 1:⾸先,打开下载数据中的surface.mxd这个地图⽂档。地图⽂档中有两个图层,其中可视的为elevgrid图层,它是Gird格式,⽤来表⽰地⾯⾼程。我们就要根据它来创建等值线。

Step 2:设置分析环境在进⾏空间分析前,必须对设置分析环境。在Spatial Analyst ⼯具条中,Spatial Analyst菜单下,点击Options。设置你的⼯作⽬录;设置Extent 为\"Same as Layer elevgrid\";设置Cell Size \"Same as Layer elevgird\".

Step 3: ⽣成等值线在Spatial Analyst菜单--->Surface Analysis---->Contour,出现下⾯这个控制⾯版,在Input Surface 中选择输⼊的Raster,Contour interval表⽰等⾼线间的差值,Base contour表⽰启始等⾼线,⼀般采⽤却省0。Z facotor表⽰⽅向控制,兔⼋哥从来没⽤过。下⾯就是输出的位置和⽂件名了。

Step 4:等⼏秒后,结果出来了,如下图所⽰。呵呵,是不是很简单呀。

2.2.2 ⽣成⼭体阴影(Hillshade)

在前⾯2.2.1中,我们通过Grid⽣成了等⾼线,现在我们来⼀起利⽤该Grid⽣

成⼭体阴影,增加数据的显⽰的真实感。在⽣成阴影前,⾸先需要对⽅位⾓和太阳⾼度⾓有⼀定的了解,⼆者的⽰意图如下:

左图:来⾃ESRI 的电⼦⽂档,说明⽅位⾓和太阳⾼度⾓的意义。在ArcGIS 中缺省的⽅位⾓为315度(西北⽅向),缺省的太阳⾼度⾓为45度。下⾯我们⼀起进⾏操作吧:

Step 1:⾸先,打开下载数据中的surface.mxd这个地图⽂档。我们将对elevgrid这个栅格数据创建⼭体阴影。

Step 2:设置分析环境在Spatial Analyst⼯具条中,Spatial Analyst菜单下,点击Options。设置你的⼯作⽬录;设置Extent为\"Same as Layer elevgrid\";设置Cell Size \"Same as Layer elevgird\".Step 3: 创建⼭体阴影在Spatial Analyst菜单--->Surface

Analysis---->Hillshade,出现下⾯这个控制⾯版,在Input Surface 中选择输⼊的Raster,Azimuth表⽰⽅位⾓,Altitude表⽰⾼度⾓。下⾯都使⽤缺省值。(⼤家注意Output raster中为,也就是⽣成的栅格数据为临时的。)

Step 4:稍等,结果就出来了,如下图所⽰,还是蛮专业的吧。

选择保存的路径和⽂件名就OK了。

2.2.3 ⽣成坡度(Slope)

坡度是地形描述中常⽤的参数,在各类⼯程中也有很多的⽤途,⽐如在农业⽤地开发中,坡度⼤于25度的⼟地⼀般是不适宜开发的。在其他的很多选址⽅⾯,坡度也是必须考虑的问题。利⽤ArcGIS空间分析扩展模块,我们可以⾮常容易的提取出地⾯的坡度信息。

下⾯我们⼀起进⾏操作吧:

Step 1:⾸先,打开下载数据中的surface.mxd这个地图⽂档。我们仍然根据elevgrid 来派⽣出需要的坡度信息。

Step 2:设置分析环境在Spatial Analyst⼯具条中,Spatial Analyst菜单下,点击Options。设置你的⼯作⽬录;设置Extent为\"Same as Layer elevgrid\";设置Cell Size \"Same as Layer elevgird\".

Step 3: ⽣成坡度在Spatial Analyst菜单--->Surface Analysis---->Slope,出现下⾯这个控制⾯版,在Input Surface 中选择输⼊的Raster elevgrid;选择输出坡度⽅式,⽣成的坡度可以是坡度度数或者坡度百分⽐,在本例中选择Degree;Output cell Size为定义输出cell⼤⼩,缺省值为输⼊Grid的Cell⼤⼩。(⼤家注意Output raster 中为,也就是⽣成的栅格数据为临时的。)

Step 4:输出结果按照不同的颜⾊显⽰坡度,红⾊的坡度较⼤。⼤家可以对输出结果进⾏重分类(在后⾯部分将学习到)。

Step 5:别忘了,这个栅格数据是临时的,还需要把他永久保存下来。如下图所⽰,选择保存的路径和⽂件名就OK了。

2.2.4 坡向计算(Aspect)

坡向和坡度是互相关联的两个参数,坡度反映斜坡的倾斜程度,⽽破向则反映斜坡所⾯对的⽅向。当基于DEM计算坡向时,通常定义坡向为:过格⽹单元所拟合的曲⾯上某点的切平⾯的法线的正⽅向在平⾯上与正北⽅夹⾓。即法⽅向⽔平投影向量的⽅位⾓。(龚健雅《地理信息系统基础》)

下⾯我们⼀起进⾏操作吧:

Step 1:⾸先,打开下载数据中的surface.mxd这个地图⽂档。我们将根据elevgrid 这个栅格数据⽣成坡向图。

Step 2:设置分析环境在Spatial Analyst⼯具条中,Spatial Analyst菜单下,点击Options。设置你的⼯作⽬录;设置Extent为\"Same as Layer elevgrid\";设置Cell Size \"Same as Layer elevgird\".

Step 3: 计算坡向在Spatial Analyst菜单--->Surface Analysis---->Aspect,出现下⾯这个控制⾯版。感觉坡向中要求输⼊的参数较少。在Input Surface 中选择输⼊的Raster,输出的Cell Size使⽤缺省值。(注意Output raster中为,也就是⽣成的栅格数据为临时的。)

Step 4: 结果如下图所⽰,不同的颜⾊表⽰不同的坡向(见Toc)。

Step 5:别忘了,这个栅格数据是临时的,还需要把他永久保存下来,选择保存的路径和⽂件名就OK了。相信⼤家也都会了,兔⼋哥就不⽤图⽰了。2.2.5可视域分析(Viewshed)

可视域分析⼜称通视分析,它属于根据地形进⾏最优化处理范畴,⽐如建设⼀个电视发射站,设置雷达站以及在航海,航空,军事上⾯都被⼴泛的应⽤。下⾯我们⼀起进⾏操作吧:

Step 1:⾸先,打开下载数据中的surface.mxd这个地图⽂档。前⾯我们做了⼀个⼭体阴影⽣成了⼀个Grid(兔⼋哥⽣成的命名为HillShade),把该数据增加到地图⽂档中。在地图⽂档中有⼀个“哨所”的图层,将该图层可视。本⼩节中我们将研究⼀下,这些哨所的可视范围。

Step 2:设置分析环境在Spatial Analyst⼯具条中,Spatial Analyst菜单下,点击Options。设置你的⼯作⽬录;设置Extent为\"Same as Layer elevgrid\";设置Cell Size\"Same as Layer elevgird\".

Step 3: ⽣成哨所的可视域在Spatial Analyst菜单--->Surface

Analysis---->Viewshed,出现下⾯这个控制⾯版,在Input Surface 中选择elevgrid,Observer Points为观察点图层。其他使⽤缺省值。

Step 4:⽣成可视域⾮常的慢,可要有耐⼼哦。⽣成后,如下图所⽰,显得不很直观。下⾯我们将对他进⾏符号化。

Step 5:在ArcMap⽬录表中,将Not Visible设置为⽆⾊填充,⽽Visible设置为红

⾊填充。在ArcMap中增加Effects⼯具条,设置\"Viewshed of 哨所\"30%透明。处理后结果如下,其中红⾊区域就是两个哨所的可视区域。⽽其他区域不可视。

Step 5:如果对你的作品感到满意,别忘记把他永久保存下来哦。2.2.6 计算⼟⽅量⼯具(Cut/Fill)

兔⼋哥第⼀次使⽤ArcGIS扩展模块就是⽤来计算⼟⽅量的,当时在煤⽥灭⽕处,他们⼿头有挖⽅前和挖⽅后的地表GPS数据。希望能计算出⼯程的实际⼟⽅量。当时使⽤的版本上ArcGIS8.1,好象这个⼯具还是在3D扩展模块中,Spatial 扩展模块中没有的(记不清楚了!)计算⼟⽅量的⽅法

因为兔⼋哥⼿头没有合适的数据只能将⼤概步骤写下来:

Step 1:⼀般情况下,我们⼿头的数据都是⽤GPS采集的x,y,z⽂本数据。⾸先我们需要根据这些数据⽣成⼀个点状的Shapefile,当然挖⽅前后各⾃⽣成⼀个(如果不会,GIS空间站上有这⽅⾯的步骤)。

Step 2: 利⽤3D扩展模块,利⽤Shapefile分别⽣成挖⽅前后的Tin。(其实这个时候,你会发现3D模块中也有Cut/fill⼯具,呵呵,这个和Spatial模块中完全相同)。Step 3: 利⽤Spatial Analyst⼯具条中Surface Analysis---->Cut/Fill,在Before Surface 和After Surface中分别选择挖⽅前后的Tin。

Step 4:处理后,结果如下图所⽰。⽤不同的颜⾊显⽰⼟⽅变化,红⾊表⽰⼟⽅增加,兰⾊表⽰⼟⽅减少,其他的为没有变化

的区域。

step 5: 在处理结果的属性表中,对Volume字段中正负属性值分别选择,进⾏统计,

因篇幅问题不能全部显示,请点此查看更多更全内容