ArcGIS教程:ArcGIS中的栅格计算

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

  一 数学运算

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

  1. 算术运算

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

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

  

  图1 算术运算示意图

  2. 布尔运算

  布尔运算主要包括:和(And)、或(Or)、异或(Xor)、非(Not)。它是基于布尔运算来对栅格数据进行判断的。经判断后,如果为“真”,则输出结果为1,如果为“假”, 则输出结果为0。

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

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

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

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

  例如,以过去及现在的地表类型为基础,说明用“和”来提取从未被沙漠化过的地表的方法,如图2(其中沙漠为0,其它数值代表了不同的地表类型)。

  

  图2布尔运算示意图

  3. 关系运算

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

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

  二 函数运算

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

  1. 算术函数(Arithmetic)

  算术函数主要包括六种:Abs(绝对值函数)、Int(整数函数)、Float(浮点函数)、 Ceil(向上舍入函数)、Floor(向下舍入函数)、IsNul(输入数据为空数据者以1 输出,有数据者以0输出)。

  2. 三角函数(Trigonometric)

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

  3. 对数函数(Logarithms)

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

  4. 幂函数(Powers)

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

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

  栅格计算器也直接支持ArcGis 自带的大部分栅格数据分析与处理函数,如栅格表面分析中的slope、hillshade

  函数等等,在此也不一一列举,具体用法请参阅相关文档。它与数学函数不同的是,这些函数并没有出现在栅格计算器图形界面中,而是由计算者自己手 动输入。

  三 栅格计算器

  1. 启动栅格计算器

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

  2. 编辑计算公式

  (1) 简单算术运算

  如下图3 所示,在公式编辑器中先输入计算结果名称,再输入等号(所有符号两边需要加一个空 格),然后在Layers 栏中双 击要用来计算的图层,则选择的图层将会进入公式编辑器参与运算。其中“-” 和“^”为单目运算符,运算符前可以不加内容,而只在运算符后加参与计算的对象,如a = - [slope]等。在公式编辑器如果引用Layers 选择框的数据层,数据层名必须用[ ]括起来。

  

  图3 栅格计算器的数学算术运算

  

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

  (2) 数学函数运算

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

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

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

  

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

  (4) 多语句的编辑

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

  

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

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

时间: 2024-10-07 01:48:43

ArcGIS教程:ArcGIS中的栅格计算的相关文章

关于ArcGIS10.0中的栅格计算中的函数

版本升级确实很重要,在ArcGIS10.1中计算成功的,在10.0中出了问题. 问题 在进行栅格计算时,计算公式很简单,包括两个Ln函数: "-22.73 + 11.1 * Ln(5) + 0.34 * Ln("人口.tif")" 可计算结果报错:000539 : Python 错误消息.Error running expression: rcexec() <type 'exceptions.RuntimeError'>: No CellSize and

ArcGIS教程:ArcGIS中矢量裁剪栅格图像

(1)是否需要裁剪栅格图象区域通过一个面状的shapefile表达出来? 如果可以,那么就很简单了. 在ArcMap中,调用空间分析扩展模块,将你感兴趣区的shapefile多边形图层设置为掩膜,然后在栅格计算器中重新计算一下你的图象,它就会沿掩膜裁出. 设置掩膜:空间分析工具条的下拉菜单>option里面设置 (2)用任意多边形剪切栅格数据(矢量数据转换为栅格数据) 2.1在ArcCatlog下新建一个要素类(要素类型为:多边形),命名为:ClipPoly.shp 2.2在ArcMap中,加载

ArcGIS教程:ArcGIS中图层添加投影及投影转换

由于GIS描述的是位于地球表面的空间信息,所以在表示时必须嵌入到一个空间参照系中,这个参照系就是坐标系它是根据椭球体等参数建立的.我国目前所用到的三种主要坐标系是:北京1954.西安1980及WGS84. 有了坐标系,即椭球体,数据图层就有了地理坐标,地理坐标是用经纬度表示球面的位置的.为了能够将地图从三维地理坐标通过投影转换成二位平面坐标,还要进行投影,这样的坐标系叫做投影坐标系.常用的投影有高斯-克吕格(Gauss-Kruger)投影,阿尔博斯(Albers Equal-Area Conic

ArcGIS教程:ArcGIS栅格数据的合并和剪切

1.合并:ArcToolBox->DataManagement->Raster->Mosaic. 2.剪切:在ArcMap中,调用空间分析扩展模块,将你感兴趣区的shapefile多边形图层设置为掩膜(空间分析工具条的下拉菜单>option里面设置),然后在栅格计算器中重新计算一下你的图象,它就会沿掩膜裁出. 以上教程来源地理国情监测云平台,更多ArcGIS教程及空间地理信息数据请咨询本平台,电话:010-84896208转898.官方微信号DLGQJC,为您提供3S行业知识及每日

ArcGIS教程:3D Analyst基础知识

创建3D视图 以三维形式查看数据能为您提供一个全新的认识.通过三维视图可以深入了解通过相同数据的平面地图不易察觉的内容.例如,您不必根据配置等值线来推断是否存在山谷,您能够实际看到山谷和感到谷底和谷脊的高度差异. ArcGlobe 和 ArcScene 可用于构建多图层 3D 环境,并控制如何对各图层进行符号化.渲染各图层和在 3D 空间中定位各图层.还可以控制 3D 视图的全局属性,如照明度或垂直夸大.可以通过以下方式选择要素:使用要素的属性或要素相对于其他要素的位置,或者在场景或地球中单击各

ArcGIS教程:区域插值参数

构建有效模型 与所有地统计插值方法一样,区域插值中的预测准确性取决于模型的准确性.了解此事项后,在地统计向导 中构建有效模型时应多加注意. 由于 ArcGIS Geostatistical Analyst 扩展模块中的区域插值是通过克里金框架实现的,因此交互式变异分析是构建模型的重要步骤.通常很难从视觉上判断协方差曲线的质量,因此为每个经验协方差(下图中的蓝十字)提供了置信区间(下图中的红色垂直线段).如果正确指定了协方差模型,预计有 90% 的经验协方差落在置信区间内.在下图中,12 个经验协

ArcGIS教程:波段集统计

摘要 计算一组栅格波段的统计信息. 用法 · 栅格波段必须具有一个公共交集.如果不存在公共交集,则会出现错误,且不会创建任何输出. · 如果栅格波段的范围不同,统计数据将以所有输入栅格波段的共同的空间范围来计算.默认情况下,像元大小为输入栅格的最大像元的大小;否则,将取决于栅格分析环境设置. · 计算矩阵参数(在脚本中为 BRIEF,在工具对话框中为未选中状态)的默认设置是仅计算输入栅格波段的最小值.最大值.平均值以及标准差.要计算这些统计数据以及其协方差和相关矩阵,需要在脚本中将参数设置为 D

ArcGIS教程:Spatial Analyst 扩展模块浏览

ArcGIS Spatial Analyst 扩展模块提供了一整套基于栅格的空间分析工具和功能.通过此扩展模块,您可以使用多种数据格式来组合数据集.解释新数据和执行复杂的栅格操作.使用 Spatial Analyst 扩展模块可执行的分析示例包括:terrain 分析.地表建模.表面插值.适宜性建模.水文分析.统计分析和影像分类. 下面将简单介绍 Spatial Analyst 扩展模块的主要组件: 访问 Spatial Analyst 功能的最常用途径是利用地理处理工具.通过这一功能丰富的环境

ArcGIS教程:Spatial Analyst 的分析环境

开始执行分析前,了解正在使用的地理处理分析环境非常重要.分析环境包括将要放置结果的工作空间和范围.像元大小以及结果的坐标系. 运行地理处理工具时,可通过环境设置来指定环境设置.可以在不同级别覆盖环境的默认设置.每个工具对话框都有一个环境按钮,可以用来覆盖应用程序级别设置. 四个环境级别构成一个等级,其中应用程序级别最高.在此等级中,环境设置会传递给下一级别,如下图所示.在每个级别,都可以用其他设置覆盖传递的环境设置. 此等级的一个例外是模型.如果从模型构建器 窗口中运行模型,则应用程序环境会传递