99网
您的当前位置:首页ArcGIS 9 教程_第8章 栅格数据的空间分析

ArcGIS 9 教程_第8章 栅格数据的空间分析

来源:99网
第八章 栅格数据的空间分析

栅格数据结构简单、直观,非常利于计算机操作和处理,是GIS常用的空间基础数据格式。基于栅格数据的空间分析是GIS空间分析的基础,也是ArcGIS的空间分析模块的核心内容。栅格数据的空间分析主要包括:距离制图、 密度制图、表面生成与分析、单元统计、领域统计、分类区统计、重分类、栅格计算等功能。ArcGIS栅格数据空间分析模块(Spatial Analyst)提供有效工具集,方便执行各种栅格数据空间分析操作,解决空间问题。本章将对ArcGIS中栅格数据空间分析的各模块从原理上和实现上作详细的说明,并附以具体实例,引导读者更好的应用。

8.1 设置分析环境

基于ArcGIS进行空间分析首先要设置分析环境。分析环境的设置会一定程度地影响空间分析结果。它主要包括工作目录的选择、栅格单元大小的设定、分析区域的选定、坐标基准的配准模式、分析过程文件的管理等。本节将逐一对各分析环境的设置作详细说明。

8.1.1工作路径

缺省情况下分析结果将自动保存在操作系统的默认路径下,如c:\\...\emp。当然,通过栅格空间分析模块中的Option选项的设置,可以指定新的所有分析结果的默认存放位置。

1. 单击Spatial Analyst菜单下的Option命令,打开Option对话框。

2. 在弹出的Option对话框中选择General标签(图8.1);

3. 在Working栏中指定存放路径; 4. 点击确定按钮。

图8.1 设置工作路径

8.1.2 栅格大小

此处栅格大指分析过程中系统默认的栅格数据的栅格单元大小(Cell Size),也有人把它称为分析解析度。栅格数据的空间分析就是在每一个栅格单元的基础上进行的。如果单

1

元过大则分析结果精确度降低,如果单元过小则会产生大量的数据,而且计算速度降低。所以需要选择合适的单元大小。可以通过如下方式来设置:

1. 单击Spatial Analyst菜单下的Option命令,打开Option对话框。

2. 在弹出的Options对话框中选择Cell Size标签(图8.2);

3. 在Analysis cell栏的下拉菜单中可选择如下三种方式中的一种来进行分析;

(1) Maximum of Inputs:输入栅格的最大单元值;

(2) Minimum of Inputs:输入栅格的最小单元值;

(3) As Specified Below:自己设定合适的单图8.2 为计算结果设置单元大小 元大小。可以手动输入栅格大小值,也可以选择已有的栅格数据层,或点击右边文件打开图标,选择合适的栅格文件作为默认分析栅格大小。

(4) Number of rows和Number of columns栏中分别设定行和列的数目。 4. 点击确定按钮。

8.1.3 分析区域

1.利用坐标设置分析区域

在栅格数据的空间分析中,当对几个输入栅格进行函数计算时,缺省情况下其计算范围是在几个输入栅格的重叠位置上进行的,即是在输入栅格的交集上进行的,则它的计算结果也是这个范围。但是为了满足工作需要,可以定义一个用户需要的计算范围。定义方法为:

(1) 单击Spatial Analyst菜单下的Option命令,打开Option对话框。

(2) 在弹出的Options对话框中选择Extent标签,如图8.3;

(3) 在Analysis extent栏的下拉菜单中可选择如下四种方式中的一种来进行分析;

1) Same as Display:在地图的可视区域上进行分析;

2) Intersection of Inputs (默认值):在输入栅格的交集上进行分析;

3) Union of Inputs:在图层的并集上进行分析; 图8.3利用坐标设置分析区域 4) As Specified Below:自己设定合适的分析范

2

围。可以手动输入Top, Bottom, Left, Right栏的具体坐标值,来控制分析范围。也可以选择已有的栅格数据层,或点击右边文件打开图标,选择合适的栅格文件,用它们的坐标范围作为当前分析范围。

(4) 点击确定按钮。

2.利用掩码设置分析区域

此外,在进行空间分析的过程中,如果分析只是在所选择的单元集或局部区域进行,并不需要在整个单元集上进行,这时就需要设置分析掩码。掩码顾名思义就是用来遮掩的码。分析掩码标识了分析过程中需要考虑到的分析单元即分析范围。此过程中,首先要预设分析掩码,并对不需要进行分析的单元赋空值,然后进行分析。分析掩码的创建参照重分类(8.5 重分类)。

分析掩码的设定过程为:

(1) 单击Spatial Analyst菜单下的Option命令,打开Option对话框。在弹出的Options对话框中选择General标签,如图8.4;

(2) 在Analysis mask中选择已创建的掩码;

(3) 点击确定按钮。

图8.4 分析掩码的使用 在后继分析中,所有的分析只在掩码范围内进

行。

8.1.4 坐标系统

在ArcGIS的空间分析中,可以通过两种方式设定分析结果的坐标系统配准方式,具体过程为:

1. 单击Spatial Analyst菜单下的Option命令,打开Option对话框。在弹出的Options对话框中选择General标签,如图8.5;

2. 在Analysis Coordinate System栏中选择你所需要的坐标系统;

(1) 分析结果将以输入栅格的坐标系统来存储(如果存在多个输入栅格,则将以第一个输入栅格坐标系统存储);

(2) 分析结果将以“Active”数据的坐标系统来存储。

3. 点击确定按钮。 图8.5 坐标系统

3

8.1.5 过程文件管理

在ArcGIS空间分析过程中,除了少数需要明确指出输出文件名称的分析功能模块外,大多数分析的过程文件和结果文件都是临时性的。如果需要保存,可以通过三种方式将临时性结果转化为永久性结果。

1. 在函数对话框中输入结果全名

在输出计算结果时,在文件输出对话框(Output raster)输入结果文件全名,计算结果将被永久性保存。如图8.6。

2. 通过目录表永久保存计算结果 图8.6 文件输出对话框 激活需要永久保存的数据层,点击鼠标右键,

,在弹出的对选择Make Permanent命令(图8.7)

话框中设置目录路径并为结果指定名称。

3. 通过保存地图文档永久保存计算结果 在文件(File)菜单中选择保存(Save)或另存为(Save As)命令。在弹出的对话框中指定存放路径和文件名称,并在保存类型下拉箭头中选择ArcMap Documents(*.mxd)。地图文档保存的仅仅是当前地图文档中所有数据层的索引信息,包括文件的名称、存放路径、符号化等,并不存放数据层的具体数据,在以后应用中,如果数据层的存放路径发生改变,地图文档就无法自动完图8.7 通过目录表永久保存计算结果 成数据的链接和读入。

8.2 距离制图

距离制图(Distance)即根据每一栅格相距其最邻近要素(也称为“源”)的距离来进行分析制图,从而反映出每一栅格与其最邻近源的相互关系。通过距离制图可以获得很多相关信息,指导人们进行资源的合理规划和利用。例如,飞机失事紧急救援时从指定地区到最近医院的距离;消防、照明等市政设施的布设及其服务区域的分析等。此外,也可以根据某些成本因素找到A地到B地的最短路径或成本最低路径。本节就ArcGIS中距离制图的基本原理和实现过程进行详细阐述。

4

8.2.1距离制图基础

距离在空间分析中是一个非常广义的概念。它不再只是单一的代表两点间的直线长度,而是被赋予了更加丰富的内容。在此,提出了一个新的概念,函数距离。函数距离是描述两点间距离的一种函数关系,如以时间、摩擦、消耗等为函数,将这些用于距离测量的函数集中起来,称为函数距离。

ArcGIS中的距离制图包括了四个部分(图8.8):直线距离函数(Straight Line)、分配函数(Allocation)、成本距离加权函数(Cost Weighted)、最短路径函数(Shortest Path),可以很好实现常用的距离制图分析。在ArcGIS中,距离制图分析主要通过距离制图函数完成,在这里有些基本概念和约定首先需要说明。

图8.8 距离制图函数所在位置

1. 源

源即距离分析中的目标或目的地。如学校,商场,水井,道路等。在空间分析中,用来参与计算的源一般为栅格数据,源所处的栅格赋予源的相应值,其他栅格没有值。如果源是矢量数据则需要先转成栅格数据。

2. 距离制图函数 (1) 直线距离函数

直线距离函数用于量测每一栅格单元到最近源的直线距离。它表示的是每一栅格单元中心到最近源所在栅格单元中心的距离。

(2) 成本距离加权函数

成本距离加权函数用其它函数因子修正直线距离,这些函数因子即为单元成本。通过成本距离加权功能可以计算出每个栅格到距离最近、成本最低源的最少累加成本。这里成本的意义非常广泛,它可以是金钱、时间或偏好。直线距离功能就是成本距离加权功能的一个特例,在直线距离功能中成本就是距离。成本距离加权依据每个格网点到最近源的成本,计算从每个格网点到其最近源的累加通行成本。

成本距离加权考虑到了事物的复杂性,对于基于复杂地理特性的分析非常有用。例如不是所有道路都是平坦的,即使目的地就在山的另一边,其直线距离很近,但翻过高山要比走直路难得多,如将时间作为成本,翻山需要1小时,绕路需要30分钟,则此时翻山的成本距离就要大于绕路的成本距离,因此人们会自觉选择绕路而不是翻山。除此之外,成本距离加权还对动物迁移研究、顾客旅为、道路、输送管线、输等等的最低耗费成本计算非常有帮助。

(3) 距离方向函数

距离方向函数表示了从每一单元出发,沿着最低累计成本路径到达最近源的路线方向。如图8.9为成本距离加权数据与方向数据的说明图,图a为成本距离加权数据,图b

5

为与图a相对应的方向数据,图c为方向数据说明图。图b中3,4,5分别代表了不同的方向数值。此过程中ArcGIS将方向分成了8个部分,分别用数字1~8表示,如图c。其中0表示成本距离权重中的每一个栅格单元,每一个栅格单元将被赋予一个方向值(1~8),这一方向值表示了从此栅格到最近源的最小成本路径的方向。例如,当栅格值为1时,它的方向将指向正东方向;栅格值为4时,它的方向将指向西南方向。

654.0 7.5 924.93 3 4 6 7 8 327.0 462.5 7.5 3 4 4 5 0 1 327.0 654.0 5 5 4 3 2 (a) (b)图8.9 成本距离加权数据与方向数据的说明图 (c)

(4) 成本

成本即到达目标、目的地的花费,包括金钱、时间、人们的喜好等等。影响成本的因素可以只有一个,也可以有多个,如学校的选址,不仅要考虑位置的适宜性,还要考虑土地利用现状、交通是否便捷,等等。成本栅格数据记录了通过每一单元的通行成本。成本分配加权函数通过计算累加成本来找寻最近源。

成本数据的获取一般是基于重分类功能(参照8.5重分类)来实现的通行成本的计算。一般将通行成本按其大小分类,再对每一类别赋予一定的量值,成本高的量值小,成本低的量值大。成本数据是一个单独的数据,但有时会遇到需要考虑多个成本,如需要考虑时间和空间通达性两种成本,此时需要对各自分类好的时间和空间通达性两种成本,根据影响百分比对其数据集赋权重,让它们分别乘以各自百分比然后相加,就生成了成本栅格数据。

8.2.2直线距离

直线距离功能计算了每个栅格与最近源之间的欧氏距离,并按距离远近分级。利用直线距离功能可以实现空气污染影响度分析,寻找最近医院,计算据最近超市的距离等操作。操作过程如下为:

1. 在Spatial Analyst下拉菜单中选择Distance,在弹出的下一级菜单中点击Straight Line,出现Straight Line对话框,如图8.10。

2. 在Distance to栏的下拉菜单中选择需要测算距离的图层;

3. 在Maximum distance栏中输入一个最大距离。则计算值在此距离范围内进行,此距离以外的地方被赋于空值,如未设定此项,则计算在整个图层范围内进行;

4. Output cell size:指定输出结果的栅格大小;

6

5. Create direction:可选项,如选择则生成相应的直线分配数据,如图8.11; 6. Create allocation:可选项,如选择则生成相应的直线方向数据,如图8.12; 7. Output raster:输出结果文件名;

8. 点击OK按钮。则生成每一位置到其最近源的直线距离图,如图8.13。

图8.10 直线距离函数对话框

图8.11 直线方向数据

图8.12 直线分配数据 图8.13 直线距离数据

8.2.3区域分配

分配功能依据最近距离来计算每个格网点归属于哪个源,也就是将所有栅格单元分配给离其最近的源,输出格网的值被赋予了其归属源的值。

分配功能可以完成超市服务区域划分,寻找最邻近学校,找出医疗设备配备不足的地区等分析。操作过程如下:

1. 在Spatial Analyst下拉菜单中选择Distance,在弹出的下一级菜单中点击Allocation,出现Allocation对话框,(图8.14);

7

图8.14分配功能的实现方法

2. 在Assign to栏的下拉菜单中选择需要分配单元的源图层;

3. 在Maximum distance栏中输入一个最大距离。则计算值在此距离范围内进行,此距离以外的地方被赋予空值,如未设定此项,则计算在整个图层范围内进行;

4. 指定输出结果的栅格大小; 5. 为输出结果指定目录及名称; 6. 点击OK按钮,则生成分配数据。

8.2.4成本距离加权

通过成本距离加权功能可以计算出每个栅格到距离最近、成本最低源的最少累加成本。在成本距离加权功能的实现中还可同时生成另外两个相关输出:基于成本的方向数据和分配数据。成本数据只是表示了每一个单元到它最近源的最小累积成本,而方向数据则表示了从每一单元出发,沿着最低累计成本路径到达最近源的路线方向。分配数据通过对整个区域的划分表示了每个栅格所属的最近源。

在此以到达银行的最低成本为例来说明如何实现成本距离加权功能。其中成本数据为重分类的土地利用图。土地利用图依据重分类功能被分为九个等级,分别赋以权重1~9。根据土地利用类型的不同,将通达性高的土地类型,如平地赋权重1,通达性低的林地赋权重6,沼泽地赋权重9等。利用此成本数据来生成参考了通达成本在内的成本距离加权图。

成本距离加权功能的实现过程如下:

1. 在Spatial Analyst下拉菜单中选择Distance,在弹出的下一级菜单中点击Cost Weighted,出现Cost Weighted对话框,如图8.15。

2. 在Distance to栏的下拉菜单中选择作为源的银行图层。

3. 在Cost raster栏的下拉菜单中选择重分类的土地利用图作为成本;

4. 在Maximum distance栏中输入一个最大距离。则计算值在此距离范围内进行,此距离以

图8.15 成本距离加权函数对话框

外的地方被赋予空值,如未设定此项,则计算在整个图层范围内进行;

5. Create direction:可选项,如选择则生成相应的直线分配数据,如图8.16; 6. Create allocation:可选项,如选择则生成相应的直线方向数据,如图8.17; 7. Output raster:输出结果文件名;

8. 点击OK按钮。则生成最低成本数据。如图8.18。

下一组图中,图8.16是方向数据,它表示了从每一单元出发,沿着最低累计成本路径 到达最近银行的路线方向。图8.17是分配数据,它将每个栅格分配到离它最近的银行。从

8

图中可以看出,由于成本距离加权函数不只考虑到距离的影响,而且考虑到某种成本的影响,所以基于成本距离加权函数的分配数据没有基于直线距离函数的分配数据分配边界光滑。图8.18则表示了每一栅格到其最近银行的累积成本。

图8.16 成本方向数据

图8.17 区域分配数据

图8.18 成本累计数据

8.2.5最短路径

最短路径功能是来计算并显示从目标点到源的最短路径或最小成本路径。例如利用这一函数可以找到基于可通达性考虑得到最好的路线,或找出从居民地到达超市的最优路径。

最短路径的计算过程中,出发地可以是点要素,也可以是区域要素。所以,存在三种最短路径计算方法:

1. 寻找每个区域中每个栅格单元的最适路径(For each Cell);

; 2. 寻找每个区域的一条最近成本路径(For Each Zone)

。 3. 在所有的区域中寻找一条成本最低路径(For Each ZoneBest Single)

以从三个不同的区域到达银行的最短路径为例来说明最短路径的实现过程。最短路径

9

的找寻,首先需要获取成本数据,其次执行成本加权距离函数,获取成本方向数据(图8.16)和成本累计数据(图8.18),最后通过执行最短路径功能获取最短或最优路径。前两步请参阅上节内容(成本距离加权),最短路径功能的实现过程如下:

1. 在Spatial Analyst下拉菜单中选择Distance,在弹出的下一级菜单中点击Shortest Path,出现Shortest Path对话框,如图8.19。

2. Path to:目标点数据层名;

3. Cost distance raster:成本距离加权数据层名; 4. Cost direction raster:成本方向数据层名;

5. 在Path type菜单中选择所需项,这里选择For Each Zone; 6. Output feature:输出结果文件名; 7. 点击OK按钮。

它的底图是成本距离加权图,三块深色区域为出发地, 图8.20即为生成的最短路径图,

点状要素为银行,银行和区域之间的连线即为所求的从此区域到银行的最短路径。

8.19 最短路径对话框

图8.20 三个不同区域到达银行的最短路径

8.3 密度制图

密度制图主要根据输入的已知点要素的数值及其分布,来计算整个区域的数据分布状况,从而产生一个连续的表面。它主要是基于点数据生成的,以每个待计算格网点为中心,进行环形区域的搜寻,进而来计算每个格网点的密度值。

利用密度制图可以通过密度表面显示点的聚集情形,例如可以制作人口密度图反映城市人口聚集情况,或根据污染源数据来分析城市污染的分布情况。

密度制图从本质上讲,是一个通过离散采样点进行表面内插的过程,根据内插原理的不同,可以分为核函数密度制图(Kernal)和简单密度制图(Simple)。

1. 核函数密度制图:在核函数密度制图中,落入搜索区内的点具有不同的权重,靠近格网搜寻区域中心的点或线会被赋以较大的权重,随着其与格网中心距离的加大权重降低。它的计算结果分布较平滑;

10

2. 简单密度制图:在简单密度制图中,落在搜寻区域内的点或线有同样的权重,先对其进行求和,然后用其合计总数除以搜索区域的大小,从而得到每个点的密度值。

密度图的制作的具体过程如下(图8.21):

图8.21密度制图

(1) 在Spatial Analyst下拉菜单中选择Density命令;

(2) 在Input data的下拉菜单中选择用来进行分析的点要素图层; (3) 在Population field的下拉菜单中选择要加入的字段;

(4) 选择密度计算类型,Kernel或Simple,在此分别用两种方法计算密度; (5) Search radius:密度计算的搜索半径; (6) Area units:密度值的度量单位;

(7) Output cell size:输出栅格密度图的栅格大小; (8) Output raster:输出栅格密度图的图名; (9) 点击OK按钮,完成密度图制作。

图8.22和图8.23分别是按上述方法制作的某地区人口密度图。

图8.22 Simple方法密度图图8.23 Kernel方法密度图

11

8.4 表面分析

表面分析主要通过生成新数据集,诸如等值线、坡度、坡向、山体阴影等派生数据,获得更多的反映原始数据集中所暗含的空间特征、空间格局等信息。在ArcGIS中,表面分析的主要功能有:查询表面值、从表面获取坡度和坡向信息、创建等值线、分析表面的可视性、从表面计算山体的阴影、确定坡面线的高度、寻找最陡路径、计算面积和体积、数据重分类、将表面转化为矢量数据等。在本节中主要介绍ArcGIS表面分析中的栅格插值,基于DEM的等值线绘制,坡度、坡向等基本地形因子的提取,以及山体阴影的提取这些常用的基本分析功能,表面分析的三维表达等复杂分析功能请参阅第9章(三维分析)。

8.4.1栅格插值

一般情况下采集到的数据都是以离散点的形式存在的,只有在这些采样点上才有较为准确的数值,而其它未采样点上都没有数值。然而,在实际应用中却很可能需要用到某些未采样点的值,这个时候就需要通过已采样点的数值来推算未采样点值。这样的一个过程也就是栅格插值过程。插值结果将生成一个连续的表面,在这个连续表面上可以得到每一点的值。栅格插值包括简单栅格表面的生成和栅格数据重采样。

通过栅格插值运算生成栅格表面是栅格空间分析中很重要的一部分,很多操作都将基于离散点插值生成的表面来进行。用来插值的离散点可以是多种数据,例如,空气污染指数,土壤有机质含量,或离散高程点。

在ArcGIS 9 栅格分析模块中,通过栅格插值运算生成表面主要有三种实现方式:反距离权重插值,样条函数插值和克里格插值,

图8.24 栅格插值方法

如图8.24所示。

下面以一组土壤元素PH值的插值来逐一说明在Spatial Analyst中三种表面生成插值的实现过程。

1. 反距离权重插值(IDW)

(1) 在Spatial Analyst下拉菜单中选择Interpolate to Raster,在弹出的下一级菜单中点击Inverse Distance Weighted命令, 弹出IDW对话框,如图8.25。

(2) 在Input points的下拉菜单中选择被用来进行插值的离散点数据; (3) 在Z value field的下拉菜单中选择要加入的字段;

(4) 在Power栏中填入进行插值计算的幂值;幂值就是距离的指数。如幂指数为2时则进行反向距离平方插值。幂指数是一个正实数,其缺省值为2。

12

(5) 在Search radius type 栏中选择一种搜索半径设置类型;

1) Variable:当选择此项时,搜索半径由下面两个量来控制,Number of points和Maximum distance。首先在Number of points中输入搜索的最近点的个数(缺省值为12),然后在Maximum distance中输入一个控制距离。如果最近点的个数超出控制距离,则将会以控制距离为来选取较少的点;

当选择此项时,搜索半径由下面2) Fixed:

两个量来控制,Distance和Minimum number of points。首先在Distance中输入搜索半径距离(缺省值是输出栅格大小的五倍),然后在Minimum number of points中输入控制插值点个数的最小整数值。如果搜索半径距离内的点个数小于插值点个数的最小整数值,则搜索半径自动增大。 图8.25 IDW对话框

(6) Use barriers polyline为可选项,输入

(如某些断裂带),而要求一个中断线文件。barriers是在插值中,如有某些地方出现异常,

插值时考虑到这样的因素,所设置的选项。它是一个打断表面的线特征。这一线特征没有Z值。悬崖,峭壁,堤岸或某些障碍都是典型的barriers。barriers了插值计算,它使得计算只在线的两侧各自进行。而落在线上的点则会同时参与线两侧的计算。

(7) Output cell size:指定输出结果的栅格大小; (8) Output raster:为输出结果指定目录及名称; (9) 点击OK按钮。生成结果如图8.26所示。

图8.26 IDW插值

2. 样条函数插值(SPLINE)

样条函数插值采用两种不同的计算方法,Regularized 和Tension。如选择Regularized,它将生成一个平滑、渐变的表面,得出的插值结果很可能会超出样本点的取值范围。如选择Tension,它会根据要生成的现象的特征生成一个比较坚硬的表面,得出结果的插值更接近在样本点的取值范围内。

同时,计算过程中,除了需要选择不同的计算方法,还需要在每种方法中设定一个合

。选择Regularized时,他决定了表面最小曲率三次导的权重。权重越适的权重(weight)

高表面越光滑。可能用到的典型值有:0、0.001、0.01、1和5。选择Tension时,他决定

13

了Tension的权重。权重越高,表面越粗糙。可能用到的典型值有:0、1、5和10。

样条函数插值过程如下:

(1) 在Spatial Analyst下拉菜单中选择Interpolate to Raster, 在弹出的下一级菜单中点击Spline,出现Spline对话框,如图8.27,以下所有设置如图中所示。

(2) 在Input points的下拉菜单中选择被用来进行插值的离散点数据;在Z value field的下拉菜单中选择要加入的字段;

(3) 在Spline type中填入样条函数插值的类型;

(4) 在Weight栏中填入一个影响插值的特

图8.27 Spline对话框

征参数;

(5) 在Number of points栏中输入每一个区域内用来估值点的个数。它的缺省值是12。

(6) 指定输出结果的栅格大小; (7) 为输出结果指定目录及名称;

(8) 点击OK按钮。插值结果如图8.28。

图8.28 Spline插值结果

3. 克里格插值(Kriging)

(1) 在Spatial Analyst下拉菜单中选择Interpolate to Raster, 在弹出的下一级菜单中点击Kriging,出现Kriging对话框,如图8.29,以下所有设置如图中所示。

(2) 在Input points的下拉菜单中选择被用来进行插值的离散点数据; (3) 在Z value field的下拉菜单中选择要加入的字段; (4) 选择你所需要的克里格方法;

(5) 在Semivariogram model的下拉菜单中选择你所需要使用的模型;

(6) 点击Advanced Parameters按钮,如果知道可以指定这些参数,另外空间分析模块也将为你估算这些参数;

(7) 在Search radius type 栏中选择一种搜索半径设置类型;(设置方法同IDW)

14

(8) 指定输出结果的栅格大小; (9) 可选项,是否需要生成预测的标准误差;

(10) 为输出结果指定目录及名称; (11) 点击OK按钮。结果如图8.30。

图8.29 Kriging对话框

图8.30 Kriging插值结果

4. 数据重采样

栅格插值除了包括简单栅格表面的生成还应包括栅格数据重采样。重采样是栅格数据空间分析中处理栅格分辨率匹配问题的常用数据处理方法。进行空间分析时,用来分析的数据资料由于来源不同,经常会出现栅格不同大小问题,这时为了便于分析,就需要将不同的栅格大小转化为同样栅格大小,这样的一个过程就是栅格数据的重采样过程。

栅格数据的重采样主要基于三种方法:最邻近采样(NEAREST),双线性采样

。 (BILINEAR)和三次卷积采样(CUBIC)

(1) 最邻近采样:此重采样法用输入栅格数据中最邻近栅格值作为输出值。因此, 在重采样后的输出栅格中的每个栅格值, 都是输入栅格数据中真实存在而未加任何改变的值。这种方法简单易用,计算量小,重采样的速度最快。

(2) 双线性采样:此重采样法取待采样点(x,y)点周围四个邻点,在y方向(或x方向)内插两次,再在x方向(或y方向)内插一次,得到(x,y)点的栅格值。

(3) 三次卷积采样:这是进一步提高内插精度的一种方法。它的基本思想是增加邻点来获得最佳插值函数。取待计算点周围相邻的16个点,与双线性采样类似,可先在某一方向上内插,如先在x方向上,每四个值依次内插四次,再根据四次的计算结果在y方向上内

15

插,最终得到内插结果。

在ArcGIS中重采样功能是在ArcToolbox下来实现的。在ArcToolbox中,Data

。 Management Tools下的Raster子菜单中,选择Resample命令(图8.31)

参数说明:

(1) Input raster:选择输入栅格数据; (2) Output raster:设置输出栅格数据路径及名称;

(3) Output cell size:设置输出栅格单元大小;

(4) Resampling technique:选择重采样方法。

1) NEAREST:最邻近距离法; 2) BILINEAR:双线性内插法; 3) CUBIC:立方体法。

图8.31 重采样参数设置框

8.4.2等值线绘制

等值线是将表面上相邻的具有相同值的点连接起来的线,如地形图上的等高线、气温图上的等压线。等值线分布的疏密一定程度上表明了表面值的变化情况。值的变化越小的地方,等值线就越疏,反之越密。因此,通过研究等值线的疏密情况,可以获得对表面值变化的大致情况。

ArcGIS中等值线的绘制方法如下: 1. 在Spatial Analyst下拉菜单中选择Surface analysis, 在弹出的下一级菜单中点击Contour,出现Contour对话框,如图8.32,以下所有设置如图中所示。

2. 在Input Surface的下拉菜单中选择用来生成等高线的表面;

3. 在Contour interval栏中设置等高线间距;

4. 在Base contour栏中指定等高线基准高程;

5. 在Z factor栏中设定高程变换系数;

6. 在Output features栏中指定输出图8.32 等高线生成对话框 等高线的存放路径与文件名。

16

7. 点击OK按钮。

图8.33为某区域的等高线图,背景为该地区的地形光照晕渲图。

图8.33 某区域等高线图(背景为光照晕渲图)

8.4.3地形因子提取

因子分析方法是GIS空间分析,尤其GIS数字地形分析常用的基本分析方法。不同的地形因子从不同侧面反映了地形特征性,实际应用人们提出了各种各样的地形因子。从其所描述的空间区域范围,常用的地形因子可以划分为微观地形因子与宏观地形因子两种基本类型(图8.34)。按照提取地形因子差分计算的阶数,又可将地形因子分为一阶地形因子、二阶地形因子和高阶地形因子(图8.35)。

地形因子 微观地形因子 宏观地形因子 高程变异系数 地表切割深度 坡 形 因 子 地形粗糙度 地形起伏度 剖面曲率 坡度变率 坡向变率 平面曲率 坡 长 其中,坡度、坡向、平面曲率、剖面曲率在ArcGIS中可直接提取,其它因子的提取则需要进行一系列的复合计算。后者的具体提取过程可以参阅相关资料,这里不作介绍。

坡 度 坡 向 图8.34依据空间区域范围的坡面因子分类体系 17

地形因子 一阶地形因子 二阶地形因子 复合地形因子 高程变异系数 地表切割深度 坡 形 因 子 地形粗糙度 地形起伏度 剖面曲率 坡度变率 坡向变率 平面曲率 坡 长 1. 坡度的提取

地表面任一点的坡度(Slope)是指过该点zr。坡度的切平面与水平地面的夹角(图8.36)n表示了地表面在该点的倾斜程度。

Slope实际应用中,坡度有两种表示方式方法:

(1) 坡度(degree of slope):既水平面与P 地形面之间夹角。 x (N)

Aspect (2) 坡度百分比(percent slope):既高

程增量与水平增量之比的百分数。

(3) ArcGIS中坡度的提取过程为: y (E) (4) 在Spatial Analyst下拉菜单中选择图8.36地表单元坡度示意图 Surface analysis, 在弹出的下一级菜单中点击

Slope,出现Slope对话框,如图8.37,以下所有设置如图中所示。

(5) 在Input Surface的下拉菜单中选择用来生成坡度的表面; (6) 选择一种坡度表示方法,在此分别用两种方法做了坡度。

(7) 在Z factor栏中设定高程变换系数;

(8) 在Output cell size栏中设定栅格大小;

(9) 在Output raster栏中指定输出坡度的存放路径与文件名。

(10) 点击OK按钮。 坡度结果如图8.38所示,坡度百分比如图8.39

图8.37 坡度生成对话框

所示:

18

坡 度 坡 向 图8.35 基于提取算法的坡面因子分类体系

图8.38 坡度结果图 图8.39 坡度百分比图

2. 坡向的提取

坡向指地表面上一点的切平面的法线矢量在水平面的投影与过该点的正北方向的夹角。对于地面任何一点来说,坡向表征了该点高程值改变量的最大变化方向。在输出的坡向数据中,坡向值有如下规定:正北方向为0度,按顺时针方向计算,取值范围为0°~360°。

ArcGIS中坡向的提取过程为:

(1) 在Spatial Analyst下拉菜单中选择Surface analysis, 在弹出的下一级菜单中点击Aspect,出现Aspect对话框,如图8.40,以下所有设置如图中所示。

(2) 在Input Surface的下拉菜单中选择用来生成坡向的表面;

图8.40 坡向生成对话框

(3) 在Output cell size栏中设定栅格大小;

(4) 在Output raster栏中指定输出坡向的存放路径与文件名。 坡向结果如图8.41所示。

图8.41 坡向结果图

19

3. 平面曲率、剖面曲率的提取

地面曲率是对地形表面一点扭曲变化程度的定量化度量因子,地面曲率在垂直和水平两个方向上分量分别称为剖面曲率和平面曲率。剖面曲率是对地面坡度的沿最大坡降方向地面高程变化率的度量。平面曲率指在地形表面上,具体到任何一点,指用过该点的水平面沿水平方向切地形表面所得的曲线在该点的曲率值。平面曲率描述的是地表曲面沿水平方向的弯曲、变化情况,也就是该点所在的地面等高线的弯曲程度。

下面以一幅DEM图来说明平面曲率、剖面曲率的提取过程为:

(1) 打开ArcGIS的Toolbox,在Spatial Analyst Tools底下选择Surface,在Surface的下一级菜单中选择Curvature。打开Curvature对话框,如图8.42。

(2) 在Input raster的下拉菜单中选择用来计算曲率的栅格数据;

(3) 在Output curvature raster栏中设定输出总曲率的存放路径与文件名; (4) 在Z factor栏中设定高程变换系数;

(5) 在Output profile curve raster栏中指定输出剖面曲率的存放路径与文件名。 (6) 在Output plan curve raster栏中指定输出平面曲率的存放路径与文件名。 总曲率结果如图8.43,剖面曲率结果如图8.44,平面曲率结果如图8.45:

图8.42 平面曲率、剖面曲率提取对话框 图8.45 平面曲率结果图

图8.44 剖面曲率结果图

图8.43 总曲率结果图

20

8.4.4山体阴影

山体阴影是根据假想的照明光源对高程栅格图的每个栅格单元计算照明值。山体阴影图不仅很好地表达了地形的立体形态,而且可以方便的提取地形遮蔽信息。计算过程中包括三个重要参数:太阳方位角、太阳高度角、表面灰度值。

太阳方位角以正北方向为0度,按顺时针方向度量,如90度方向为正东方向(图8.46)。

N(0)

90度 W(270)E(90)

0度

S(180)

图8.46 太阳方位角度量示意图

图8.47太阳高度角示意图

由于人眼的视觉习惯,通常默认方位角为315度,即西北方向。

太阳高度角为光线与水平面之间的夹角,同样以度为单位(图8.47)。为符合人眼视觉习惯,通常默认为45度。

ARCGIS中,默认情况下,光照产生的灰度表面的值的范围为0~255。山体阴影的实现过程如下:

1. 计算表面阴影

(1) 在Spatial Analyst下拉菜单中选择Surface analysis, 在弹出的下一级菜单中点击Hillshade,出现Hillshade对话框,如图8.48,以下所有设置如图中所示。

图8.48 计算表面阴影

(2) (3) (4) (5)

在Input surface下拉菜单中选择用来计算阴影的表面; 在Azimuth栏中设置太阳方位角; 在Altitude栏中设置太阳高度角; 在Z factor栏中设定高程变换系数;

21

(6) 在Output cell size栏中指定输出栅格单元大小;

(7) 在Output raster栏中指定输出表面阴影的存放路径与文件名。 (8) 点击OK按钮。

图8.49为某区域设定入射方位角为315度,高度角为45度所生成的表面阴影栅格图像。

2. 阴影化

,当给定太阳高度角和方位角通过阴影建模工具(在图8.48对话框中选中该复选框)

时,可以快速提取被阴影遮蔽的栅格单元,它们会被赋值为0。再通过空间分析的重分类(Reclassify)方法生成二值图像,阴影区赋值为0,非阴影区赋值为1。图8.50即为阴影二值图。

图8.49 表面阴影图

图8.50 阴影二值图

8.5 统计分析

8.5.1 单元统计

当进行多层面栅格数据叠合分析时,经常需要以栅格单元为单位来进行单元统计(Cell Statistics)分析。ArcGIS的单元统计分析功能提供了十种单元统计方法,分别为:

1. Minimum:找出各单元上出现最小的数值; 2. Maximum:找出各单元上出现最大的数值; 3. Range:统计各单元上出现数值的范围; 4. Sum:计算各单元上出现数值的和;

5. Mean: 计算各单元上出现数值的平均数;

6. Standard Deviation:计算各单元上出现数值的标准差; 7. Variety:找出各单元上不同数值的个数;

22

8. Majority:统计各单元上出现频率最高的数值; 9. Minority:统计各单元上出现频率最低的数值; 10. Median:计算各单元上出现数值的中值;

如下图8.51中的一组表格所示,表格中每一格子代表一个栅格单元,最后一个表格是基于前两个表格进行单元统计的最小值统计得到的结果。即将前两个表格中相对应栅格数值进行比较,找出各单元上出现的最小数值。

34 1 5 8 5 312945682 734132 6 7 求最小值8 614图8. 51 最小值单元统计单元统计功能常用于同一地区多时相数据的统计,通过单元统计得出所需分析数据。例如,同一地区不同年份的人口分析,同一地区不同年份的土地利用类型分析等。

单元统计的操作过程如下,图8.52所示:

1. Spatial Analyst下拉菜单中选择Cell Statistics; 2. 在Layer列表框中选择你要用来计算的图层,在列表框中选择一个图层,点击Add按钮将其加入Input rasters列表框(也可用Browse按钮从磁盘中选择要使用的栅格数据);

3. 在Overlay statistic栏中选择你用来对输入图层进行计算的统计类型; 4. 为输出结果指定目录及名称; 5. 点击OK按钮。

图8.52 单元统计的操作过程

23

8.5.2 领域统计

邻域统计的计算是以待计算栅格为中心,向其周围扩展一定范围,基于这些扩展栅格数据进行函数运算,从而得到此栅格的值。ArcGIS中的邻域统计提供了十种统计方法。分别如下:

1. Minimum:找出在邻域的单元上出现最小的数值; 2. Maximum:找在邻域的单元上出现最大的数值; 3. Range:在邻域的单元上数值的范围; 4. Sum:计算邻域的单元内出现数值的和;

5. Mean:计算邻域的单元内出现数值的平均数;

6. Standard Deviation:计算邻域的单元内出现数值的标准差; 7. Variety:找出邻域的单元内不同数值的个数;

8. Majority:统计邻域的单元内出现频率最高的数值; 9. Minority:统计邻域的单元内出现频率最低的数值; 10. Median:计算邻域的单元内出现数值的中值; 邻域统计计算过程中,对于邻域的设置有不同的设置方法,ArcGIS中提供了四种邻域

: 分析窗口。分别如下(图8.53)

1. Rectangle:即长方形。如选择长方形邻域需要设置长方形的长和宽,缺省的邻域大小为3*3单元。

Rectangle

Circle Annulus Wedge 图8.33 邻域分析窗口类型

24

2. Annulus:即环形。如选择环形邻域则要设置邻域的内半径和外半径。半径通过和x轴或y轴的垂线的长度来指定。落入环内即内外半径之间环的数值将参与邻域统计运算,内半径以内的部分不参与计算。

3. Circle:即圆形。如选择圆形,则只需要输入一个圆的半径。

4. Wedge:即楔形。如选择楔形则需要输入起始角度,终止角度和半径三项内容。起始角度和终止角度可以是0~360的整形或浮点值。角度值从x轴的正方向零度开始然后逆时针逐渐增加直至走过一个满圆又回到零度。

如下图8.54中的两个表格所示,第一个表格为原始数据图,以带下划线的栅格为待计算栅格,即以8为中心向外扩展3*3栅格,计算函数为求均值,结果如第二个表格所示。

251 486 793 求均值 251 456 793 图8.54 邻域统计分析图 利用邻域统计可以进行边缘模糊等多种操作,如下图8.55所示,原图为一海岸线,经过邻域统计的均值运算可以进行海岸线光滑。

图8.55 利用邻域统计进行海岸线光滑

邻域统计的分析过程如下(图8.56):

1. 在Spatial Analyst的下拉菜单中选择Neighborhood Statistics; 2. 在Input data的下拉菜单中选择要用来进行邻域分析的图层; 3. 在Field栏的下拉菜单中选择进行邻域分析的字段;

4. 在statistic type栏中选择你要运用的统计类型,各种类型如下: 5. 在Neighborhood的下拉菜单中选择你要运用的邻域类型;

6. 在Units后的两个选项中选择一个邻域类型设置时各参数值的单位,可以是栅格单元或地图单位。

25

7. 指定输出结果的栅格大小; 8. 为输出结果指定目录及名称; 9. 点击OK按钮。

图8.56 邻域统计的分析过程

8.5.3 分类区统计

分类区统计即以一个数据集为基础在它所包含的不同类别中对另一个被分类数据集进行统计。用来作为基础进行分类的分类区就是分类区数据中拥有相同值的所有栅格单元,而不考虑他们是否邻近。在此基础上对同一分类区所对应的被分类数据集进行统计,所以输出结果时同一分类区被赋予一个单一的输出值。ArcGIS中的分类区统计提供了十种统计方法。分别如下:

1. Minimum:找出在分类区内出现最小的数值; 2. Maximum:找出在分类区内出现最大的数值; 3. Range:在分类区内数值的范围;

4. Sum:计算在分类区内出现数值的和;

5. Mean:计算在分类区内出现数值的平均数;

6. Standard Deviation:计算在分类区内出现数值的标准差; 7. Variety:找出在分类区内不同数值的个数;

8. Majority:统计在分类区内出现频率最高的数值; 9. Minority:统计在分类区内出现频率最低的数值; 10. Median:计算在分类区内出现数值的值;

(a)表格是分类区数据,(b)表格是被用来统计的数据,统计函数是如图8.57所示,

26

统计每一分类区中的最大值。(a)表格中,1,2,3分别代表了三个不同的区域,基于表格(a)中的三个区域,对表格(b)进行分析。在(b)区域中,分别找出1,2,3,区域中所对应的(b)区域中的栅格,然后对每一区域进行最大值统计,可以得出结果如图(c)。

1 1 1 31 1 1 21 2 2 23 3 2 23 3 3 133211

3 2 87 9 58 4 61 2 5 244775

32239

99955

99755

9 5 5 9 7 5 7 7 7 7 7 9 5 9 9 (a)

(b)

图8.57 分类区统计分析图

(c)

利用分类区统计可以计算具有某一相同属性的数据所包含的另一属性数据的统计信息。例如,可以计算每个污染区的平均人口密度,计算同一高程处植被类型的种类,或可以计算同一种植被类型下高程的平均值。以下为以某一地区坡度分类区为分类区数据集,土地利用类型为被分类数据集(图8.58),计算同一坡度分类区内土地利用类型的种类。

图8.58 坡度图与土地利用类型图

操作过程如下,图8.59所示:

1. 在Spatial Analyst的下拉菜单中选择Zonal Statistics;

2. 在Zone dataset的下拉菜单中选择要用来进行分类区统计的分类区图层; 3. 在Zone Field栏的下拉菜单中选择分类区图层中要用到的字段; 4. 在Value raster栏中选择被用来统计的栅格数据;

5. Ignore NoData in calculations:可选项,如不选中,计算中允许栅格数据中的空值参与运算。

6. Join output table to zone layer:可选项,如选重则将输出表格加入到区域数据中去(这一项仅用于图层,不能用于你浏览到的数据集);

27

7. 在Chart statistic栏中选择你要运用的统计类型; 8. Output table:为输出结果指定目录及名称; 9. 点击OK按钮。

结果如图8.60,其中(a)图用生成的表格形式表示了不同的VALUE值所对应的

图8.59 分类区统计对话框

VARIETY统计结果;(b)图用直方图的形式表示了不同高程分类区所包含的土地利用类型的种类。直方图的直方条数等于分类区个数,并以Zone Field字段值分类区代码作为直方条的标示。

(a)

(b)

图8.60 坡度分类区内土地利用类型种类分析结果图

8.6 重分类

重分类即基于原有数值,对原有数值重新进行分类整理从而得到一组新值并输出。 根据用户不同的需要,重分类一般包括四种基本分类形式:用一组新值取代原来值、将原

28

值重新组合分类、以一种分类体系对原始值进行分类,以及为指定值设置空值。

8.6.1新值取代原来值

事物总是处于不断发展变化中的,地理现象更是如此,所以为了反映事物的实时真实属性,需要不断地去用新值代替旧值。例如,气象信息的实时更新,土地利用类型的变更等。以下以服务业中包括(商场,餐饮,住宿,娱乐,超市)的变更为例介绍重分类功能的使用方法,

1. 在Spatial Analyst的下拉菜单中选择Reclassify,如图8.61; 2. 在Input raster的下拉菜单中选择需要变更值的图层; 3. 在Reclass Field栏的下拉菜单中选择需变更的字段;

4. 在New Value栏中定位需要改变数值的位置,然后键入新值。可点击Load按钮导入已经制作好的重映射表,也可以点击Save按钮来保存当前重映射表;

5. Change missing values to NoData:可选项,将missing values值改成无数据

; (NoData)

6. Output raster:为输出结果指定目录及名称; 7. 点击OK按钮。

图8.61 用一组新值取代原来值

8.6.2重新组合分类原值

经常在数据操作中需要将一些具有某种共性的事物合并为一类,这时就可以用重分类功能来进行重新组合分类。例如可以将商场,超市,餐馆等同归并为服务场所,也可将麦地,水稻地,菜地等同归并为耕地。以下同样以上例数据来演示各服务业的合并,如图8.62:

29

图8.62 将原值重新组合分类

1. 在Spatial Analyst的下拉菜单中选择Reclassify;

2. 在Input raster的下拉菜单中选择需要重新组合分类的图层; 3. 在Reclass Field栏的下拉菜单中选择需用的字段;

4. 在Old Value栏中连续选择要进行归并的数据(按住Ctrl键可以逐个进行选择,按Shift键可以选择两者之间的全部数据);

5. 在选择并弹亮的数据项上点右键;在弹出的菜单中选择Group Entries;

6. 给新组合成的数据赋予新值。可点击Load按钮导入已经制作好的重映射表,也可以点击Save按钮来保存当前重映射表;

7. Change missing values to NoData:可选项,将missing values值改成无数据(NoData);

8. Output raster:为输出结果指定目录及名称; 9. 点击OK按钮。

图8.61 用一组新值取代原来值

30

8.6.3以一种分类体系对原始值进行分类

在数据的使用过程中经常会因某种需要将数据用一种等级体系来进行分类,或需要将多个栅格数据用统一的等级体系重新归类。例如,在对洪水灾害进行预测时,需要分析降雨量数据,地形数据和植被数据等。首先要按照这几种数据对洪灾带来的影响分别将其分为大概10类(1.10)。每种数据中,级别越高其对洪灾的影响度越大。经过分类后就可以通过这些分类信息进行洪灾模拟。

下面为分类基本操作,如图8.63:

1. 在Spatial Analyst的下拉菜单中选择Reclassify;

2. 在Input raster的下拉菜单中选择需要重新分类的图层; 3. 在Reclass Field栏的下拉菜单中选择需用的字段; 4. 点击Classify按钮;

5. 在Method栏的下拉菜单中选择一种分类方法,包括Manual(手工分类), Equal Interval(等间距分类),Defined Interval(自定义间距分类),Quantile(分位数分类), Natural Breaks(自然间距分类), Standard Deviation(标准差分类);

6. 在Classes栏的下拉菜单中选择进行重分类的类别数目; 7. 点击Classification对话框中的OK按钮;

8. 根据需要,在Reclassify对话框中修改将输出的栅格数据的值,或点击Load按钮导入已经制作好的重映射表,也可以点击Save按钮来保存当前重映射表;

9. Output raster:为输出结果指定目录及名称; 10. 点击OK按钮。

图8.63 以一种分类体系对原始值进行分类

31

8.6.4指定值空值设置

有时候需要对栅格数据中的某些值设置空值来控制栅格计算。如在设置分析掩码的时候,需要将分析区域内不需要参与分析的数值设置为空值来控制栅格计算。

设置空值的方法如下,图8.:

1. 在Spatial Analyst的下拉菜单中选择Reclassify;

2. 在Input raster的下拉菜单中选择需要将值设置为空值的图层; 3. 在Reclass Field栏的下拉菜单中选择需用的字段; 4. 在New values中选择要进行空值设置的值; 5. 点击Delete Entries;

6. 选中Change missing values to NoData;

7. Output raster:为输出结果指定目录及名称; 8. 点击OK按钮。

图8. 为指定值设置空值

8.7 栅格计算

栅格计算是栅格数数据空间分析中数据处理和分析中最为常用的方法,应用非常广泛,能够解决各种类型的问题,尤其重要的是,它是建立复杂的应用数学模型的基本模块。ArcGIS 9 提供了非常友好的图形化栅格计算器,利用栅格计算器,不仅可以方便的完成基于数算符的栅格运算,以及基于数学函数的栅格运算,而且它还支持直接调用ArcGIS自带的栅格数据空间分析函数,并且可以方便的实现多条语句的同时输入和运行。

32

8.7.1数算

数算主要是针对具有相同输入单元的两个或多个栅格数据逐网格进行计算的。主要包括三组数算符:算术运算符,布尔运算符和关系运算符。

1. 算术运算

算术运算主要包括加、减、乘、除四种。可以完成两个或多个栅格数据相对应单元之间直接的加、减、乘、除运算。

例如,以今年与去年的降水量数据为基础,用公式(今年降水量-去年降水量)/去年降水量,可以计算出去年降水量的变化程度,如图8.65。(单位:毫米)

452 402 397 568 456 421 0.26 0.13 0.06 534 443 411 627 557 438 0.17 0.26 0.07 506 496 390 592 541 453 0.17 0.09 0.16 去年降水量 今年降水量 变化程度反映

图8.65 算术运算示意图

2. 布尔运算

、异或(Xor)、非(Not)。它是基于布尔运布尔运算主要包括:和(And)、或(Or)

算来对栅格数据进行判断的。经判断后,如果为“真”,则输出结果为1,如果为“假”,则输出结果为0。

(1) 和(&):比较两个或两个以上栅格数据层,如果对应的栅格值均为非0值,则输出结果为真(赋值为1),否则输出结果为假(赋值为0)。

(2) 或(|):比较两个或两个以上栅格数据层,对应的栅格值中只要有一个或一个以上为非0值,则输出结果为真(赋值为1),否则输出结果为假(赋值为0)。

(3) 异或(!):比较两个或两个以上栅格数据层,如果对应的栅格值在逻辑真假互不相同(一个为0,一个必为非0值),则输出结果为真(赋值为1),否则输出结果为假(赋值为0)。

(4) 非(^):对一个栅格数据层进行逻辑“非”运算。如果栅格值为0 ,则输出结果为1;如果栅格值非0 ,则输出结果为0。

例如,以过去及现在的地表类型为基础,说明用“和”来提取从未被沙漠化过的地表

。 的方法,如图8.66(其中沙漠为0,其它数值代表了不同的地表类型)

33

0 2 0 1 2 0 0 1 0 3 2 0 & 3 1 0 3 2 0 = 3 1 1 1 1 0 1 1 0 以前地表类型 现在地表类型 图8.66 布尔运算示意图

计算结果(1:从未被沙漠化)

3. 关系运算

关系运算以一定的关系条件为基础,符合条件的为真,赋予1值,不符条件的为假,赋予0值。关系运算符包括六种:=,<,>,<>,>=,<=。

例如,需要提取出温度介于20度到30度之间的地区(包括20度和30度),公式为:20 <= [温度] <= 30。

8.7.2函数运算

栅格计算器除了提供给大家简单的数算符来进行栅格计算外还提供给大家一些相对复杂的函数运算,包括数学函数运算和栅格数据空间分析函数运算。数学函数主要包括:算术函数、三角函数、对数函数和幂函数。

1. 算术函数(Arithmetic)

、Int(整数函数)、Float(浮点函数)、 Ceil算术函数主要包括六种:Abs(绝对值函数)

(向上舍入函数)、Floor(向下舍入函数)、IsNul(输入数据为空数据者以1输出,有数据者以0输出)。

2. 三角函数(Trigonometric)

、Cos(余弦函数)、Tan(正切函数)、Asin(反常用的三角函数包括:Sin(正弦函数)

正弦函数)、Acos(反余弦函数)、Atan(反正切函数)。

3. 对数函数(Logarithms)

对数函数可对输入的格网数字做对数或指数的运算。指数部份包括:Exp (底数e)、Exp10 (底数10)、Exp2 (底数2)三种;对数部份包括:Log (自然对数)、Log10 (底数10)、log2 (底数2)等三种。

4. 幂函数(Powers)

幂函数可对输入的格网数字进行幂函数运算。幂函数包括三种:Sqrt (平方根)、Sqr (平方)、Pow (幂)。

5. 栅格数据空间分析函数

栅格计算器也直接支持ArcGis自带的大部分栅格数据分析与处理函数,如栅格表面分析中的slope、hillshade函数等等,在此也不一一列举,具体用法请参阅相关文档。它与

34

数学函数不同的是,这些函数并没有出现在栅格计算器图形界面中,而是由计算者自己手动输入。

8.7.3栅格计算器

1. 启动栅格计算器

选择Raster Calculator。栅格计算器由四部分组成(图点击Spatial Analyst的下拉箭头,

8.67),左上部Layers选择框为当前Arcmap试图中已加载的所有栅格数据层名列表,双击任一个数据层名,该数据层名便可自动添加到左下部的公式编辑器中,中间部位上部是常用的算术运算符、0~10、小数点.、关系和逻辑运算符面板,单击所需按钮,按钮内容便可自动添加到公式编辑器中。右边可伸缩区域为常用的数算函数面板,同样单击任一个按钮,按钮内容便可自动添加到公式编辑器中。

2. 编辑计算公式 (1) 简单算术运算 如下图8.67所示,在公式编辑器中先输入计算结果名称,再输入等号(所有符号两边需要加一个空格),然后在Layers栏中双击要用来计算的图层,则选择的图层将会进入公式编辑器参与运算。其中“-”和“^”为单目运算符,运算符前可以不加内容,而只

图8.68 栅格计算器的数学函数运算

在运算符后加参与计算的对象,如a = - [slope]等。在公式编辑器如果引用Layers选择框的数据层,数据层名必须用[ ]括起来。

(2) 数学函数运算 数学函数运算需要注意的是它输入时需要先点击函数按钮,然后在函数后面的括号内加入计算对象,如图8.68所示。应该注意一点,三角函数以弧度为其默图8.67 栅格计算器的数学算术运算 认计算单位。

35

(3) 栅格数据空间分析函数运算

栅格数据空间分析函数没有直接出现在栅格计算器面板中,因此需要计算者自己手动输入。需要时引用它们时,首先必须查阅有关文档,查清楚它们的函数全名、参数、引用的语法规则等。然后在栅格计算器输入函数全名,并输入一对小括号,再在小括号中输入相关参数或计算对象,如图8.69所示。

图8.69 栅格数据空间分析函数运算

(4) 多语句的编辑

ArcGIS栅格计算器多表达式同时输入,并且先输入的表达式运算结果可以直接被后续语句引用,如图8.70所示。一个表达式必须在一行内输入完毕,中间不能回行。此外,如果后输入的函数需要引用前面表达式计算结果,前面表达式必须是一个完整的数学表达式,如图8.70中的“d = [straightline]*100”,等号左边为输出数据文件名,右边为计算式。此外,引用先前表达式的输出对象时,直接引用输出对象名称,对象名称不需要用中括号括起来,如e = d >= 2500中d。

图8.70 栅格计算器的多语句编辑

3. 检查计算公式准确无误后,点击Evaluate来完成运算,计算结果会自动加载到当

前ArcMap视图窗口。

36

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