栅格分析——栅格计算
问题和数据分析
1. 问题提出
栅格计算是栅格数据空间分析中最为常用的方法,也是进行复杂建模分析的基础,是对单栅格或多栅格数据进行对应栅格格网的算术、逻辑或函数的运算,在ArcGIS中主要利用栅格计算器工具完成。
2. 数据准备
使用的数据存储在e:\data\4.1文件夹下名为41的地理数据库中。一个是名为com的栅格数据,表示研究区域玉米产量分布;另一个是名为wheat的栅格数据,表示研究区域小麦产量分布。
数学运算
ArcGIS对栅格的数学运算包括算术运算、布尔运算和关系运算。算术运算主要包括加、减、乘、除等运算,对一个栅格数据进行逐个栅格格网与常数的算术运算或对两个或两个以上栅格的对应位置的栅格格网进行算术运算。
布尔运算主要包括与(&)、或(|)、异或(^)、和非(~)四种运算。是基于布尔运算来对栅格的每个格网值进行判断的,经判断后,如果操作结果为“真”,则该格网输出结果为1;如果操作结果为“假”,则该格网输出结果为0.
关系运算主要包括等于(==)、大于(>)、小于(<)、不等于(!=)、大于或等于(>=)、小于或等于(<=)六种运算。是基于一定的关系条件对栅格中的每个格网值进行判断,满足判断条件的格网输出结果为1,不满足判断条件的格网输出结果为0.
下面以加运算为例说明栅格计算器的操作方法。例如要计算每个栅格格网区域玉米与小麦的总产量,就要将corn和wheat这两个栅格相加
1. 加载数据
Step1:启动ArcMap;
Step2:在ArcMap主菜单上单击添加数据图标将corn和wheat栅格要素集添加到内容列表和地图窗口中
2. 加载Spatial Analyst扩展模块
Step1:单击ArcMap主菜单上的“自定义->扩展模块”
Step2:在打开的扩展模块对话框中勾选Spatial Analyst
Step3:单击关闭按钮,激活Spatial Analyst模块并关闭扩展块对话框。
3. 打开栅格计算器
Step1:单击ArcMap标准工具条上的ArcToolbox工具图标,打开ArcToolbox工具箱窗口
Step2:在ArcToolbox窗口中单击“Spatial Analyst工具->地图代数”,打开地图代数工具箱
Step3:双击“栅格计算器”工具
4. 计算粮食总产量
Step1:在栅格计算器对话框中双击图层和变量列表中的corn图层
Step2:单击加号按钮;
Step3:在栅格计算器对话框中双击图层和变量列表中的wheat图层
Step4:将输出栅格命名为sum,存储在e:\data\4.1\result文件夹下,如下图所示
Step5:单击确定按钮,完成粮食总产量计算,结果如下图
tool工具箱
函数运算
栅格计算器除了提供给用户常用的数学运算符进行栅格计算外,还提供一些地图代数工具,如条件分析、数学分析、三角函数等常用工具,如下图所示。这些工具可以和数学运算符、数学、图层变量一起构成更为复杂的栅格计算表达式。表达式应当遵循“地图代数”语法规则。
利用工具构建表达式的方法和利用数学运算符构建表达式相同,需要注意的是要根据运算符的优先级用符号构建正确的表达式。
Tips:除以上的数学运算、函数运算外,用户还可以通过使用Spatial Analyst ArcPy模块的
python脚本来构建表达式,从而完成需要的栅格计算。