Skip to main content

RasterCalculator

汇总

提供对所有现有数学函数的访问权限,并返回应用该数学运算的栅格对象。

讨论

有关此函数工作原理的详细信息,请参阅 栅格计算器 栅格函数。

栅格对象所引用的栅格数据集是临时性的。 要将其设置为永久,可以调用栅格对象的 save 方法。

语法

RasterCalculator(rasters, input_names, expression, {extent_type}, {cellsize_type})

参数 说明 数据类型

rasters

The list of input rasters.

Raster

input_names

用户定义的变量名。

String

expression

构建代数表达式以对输入栅格执行空间分析。

String

extent_type

用于创建输出栅格的空间范围。

  • FirstOf—第一个栅格变量的范围

  • IntersectionOf—所有输入栅格共有的最小区域

  • UnionOf—所有输入栅格的组合范围

  • LastOf—最后一个栅格变量的范围

(默认值为 FirstOf)

String

cellsize_type

用于创建输出栅格的像元大小。

  • FirstOf—第一个栅格变量的像元大小

  • MinOf—输入栅格的最小像元大小

  • MaxOf—输入栅格的最大像元大小

  • MeanOf—输入栅格的平均像元大小

  • LastOf—最后一个栅格变量的像元大小

(默认值为 FirstOf)

String

返回值

数据类型 说明

Raster

输出栅格。

代码示例

RasterCalculator 示例 1

使用栅格计算器的地图代数表达式示例。

from arcpy.sa import *
out_rc_multi_raster = RasterCalculator(["raster1.tif", "raster2.tif"],
                                       ["x", "y"], "x*y")
out_rc_multi_raster.save("C:/arcpyExamples/raster_rc_multi.tif")
RasterCalculator 示例 2

使用栅格计算器的地图代数表达式示例。

# Import system modules
import arcpy
from arcpy.sa import *

# Set the analysis environments
arcpy.env.workspace = "C:/arcpyExamples/data"

# Set local variables
in_raster1 = "raster1.tif"
in_raster2 = "raster2.tif"

# Run the RasterCalculator(Minus) function
out_rc_minus_raster = RasterCalculator([in_raster1, in_raster2], ["x", "y"],
                                       "x-y", "", "FirstOf")

# Save the output
out_rc_minus_raster.save("C:/arcpyExamples/raster_rc_minus.tif")