点统计 (空间分析)

需要 Spatial Analyst 许可。

摘要

对每个输出像元周围的邻域中的点计算统计数据。

了解有关“点统计”工作原理的详细信息

使用情况

  • 有多种邻域形状和统计数据类型可供选择。 可用统计数据的选择取决于指定字段的类型。

  • 对于整型字段,统计类型的有效选择包括:众数、最大值、平均值、中值、最小值、少数、范围、标准差、总和及变异度。 对于浮点型字段,有效统计数据包括:最大值、平均值、最小值、范围、标准差和总和。 众数、少数和变异度不可用。

  • 如果字段类型为整型,则以下统计数据的输出栅格将为整型:众数、最大值、中值、最小值、少数、范围、总和和变异度。 平均值和标准差统计数据的输出为浮点型。

    如果字段类型为浮点型,则所有可用统计数据类型的输出栅格都将为浮点型。

  • 如果栅格像元的邻域中没有任何点,则变异度统计数据将为其分配 0 值。 对于其他统计数据,则分配 NoData。

  • 输出像元大小参数可以通过数值进行定义,也可以从现有栅格数据集获取。 如果没有将像元大小明确指定为参数值,则将从像元大小环境获取相应值(前提是已指定环境)。 如果未指定参数像元大小和环境像元大小,但已设置捕捉栅格环境,则将使用捕捉栅格的像元大小。 如果未指定任何内容,则像元大小会通过使用范围的宽度或高度中的较小值除以 250 来计算,其中范围位于在环境中指定的输出坐标系内。

  • 如果使用数值指定像元大小,则工具会直接将其用于输出栅格。

    如果使用栅格数据集指定像元大小,则该参数将显示栅格数据集的路径而不是像元大小的值。 如果数据集的空间参考与输出空间参考相同,则栅格数据集的像元大小将直接用于分析。 如果数据集的空间参考与输出空间参考不同,则将基于所选的像元大小投影方法进行投影。

  • 有关适用于此工具的地理处理环境的详细信息,请参阅分析环境和 Spatial Analyst

参数

标注说明数据类型
输入点要素

在邻域运算中使用的输入点。

对于每个输出像元,识别落在其周围定义的邻域形状内的输入点。 对于所选点,获取来自指定属性的值,并计算统计数据。

输入可以是点或多点要素类。

Feature Layer
字段

将要计算指定统计数据的字段。 它可以是输入点要素的任何数值字段。

如果输入要素包含 z 值,则它可以是 Shape 字段。

Field
输出像元大小
(可选)

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

此参数可以通过数值进行定义,也可以从现有栅格数据集获取。 如果未将像元大小明确指定为参数值,则将使用环境像元大小值(如果已指定);否则,将使用其他规则通过其他输出计算像元大小。 有关详细信息,请参阅用法部分。

Analysis Cell Size
邻域
(可选)

每个处理像元周围的区域,在该区域中找到的所有输入点均将用于统计计算。 有多种预定义邻域类型可供选择。

选择邻域类型后,可设置其他参数来完全定义形状、大小和测量单位。 默认邻域是宽和高为三个像元的方矩形。

以下为可用邻域类型的形式:

  • 环形内半径外半径单位类型

    由内半径或外半径定义的环形(圆环形)邻域。 默认环形具有一个像元的内半径以及三个像元的外半径。

  • 半径单位类型

    具有给定半径的圆形邻域。 默认半径为三个像元。

  • 矩形高度宽度单位类型

    由高度和宽度定义的矩形邻域。 默认设置是高和宽为三个像元的正方形。

  • 楔形半径起始角度终止角度单位类型

    由半径、起始角度和终止角度定义的楔形邻域。 楔形按逆时针方向从起始角延伸到终止角。 角度以度为单位进行指定,0 或 360 的值表示东方。 也可使用负角度。 默认楔形起始角度为 0 度,终止角度为 90 度,半径为三个像元。

参数的距离单位可指定为像元单位或地图单位。 默认设置为“像元”单位。

Neighborhood
统计类型
(可选)

指定要计算的统计数据类型。

对位于每个输出栅格像元指定邻域中的点对应的指定字段值执行计算。

默认统计类型为平均值

统计类型的可用选择取决于指定字段的数值型。 如果字段为整型,则所有统计类型均可用。 如果字段为浮点型,则仅可使用最大值、平均值、最小值、范围、标准差以及总和。

  • 平均值将计算每个邻域中字段值的平均值。
  • 众数将识别每个邻域中出现频率最高的字段值。 如果出现频率相同,则使用较低的值。
  • 最大值将识别每个邻域中的最大字段值。
  • 中值将计算每个邻域中的中间字段值。 如果邻域中的点数为偶数,则结果将为两个中间值中的较小值。
  • 最小值将识别每个邻域中的最小字段值。
  • 少数将识别每个邻域中出现频率最低的字段值。 如果出现频率相同,则使用较低的值。
  • 范围将计算每个邻域内字段值的范围(最大值和最小值之差)。
  • 标准差将计算每个邻域中字段值的标准差。
  • 总和将计算邻域内字段值的总和。
  • 变异度将计算每个邻域中唯一字段值的数量。
String

返回值

标注说明数据类型
输出栅格

输出点统计数据栅格。

Raster

PointStatistics(in_point_features, field, {cell_size}, {neighborhood}, {statistics_type})
名称说明数据类型
in_point_features

在邻域运算中使用的输入点。

对于每个输出像元,识别落在其周围定义的邻域形状内的输入点。 对于所选点,获取来自指定属性的值,并计算统计数据。

输入可以是点或多点要素类。

Feature Layer
field

将要计算指定统计数据的字段。 它可以是输入点要素的任何数值字段。

如果输入要素包含 z 值,则它可以是 Shape 字段。

Field
cell_size
(可选)

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

此参数可以通过数值进行定义,也可以从现有栅格数据集获取。 如果未将像元大小明确指定为参数值,则将使用环境像元大小值(如果已指定);否则,将使用其他规则通过其他输出计算像元大小。 有关详细信息,请参阅用法部分。

Analysis Cell Size
neighborhood
(可选)

每个处理像元周围的区域,在该区域中找到的所有输入点均将用于统计计算。 有多种预定义邻域类型可供选择。

选择邻域类型后,可设置其他参数来完全定义形状、大小和测量单位。 默认邻域是宽和高为三个像元的方矩形。

每个输入点周围邻域的形状将由 Neighborhood 类进行定义。 可用的邻域类型有 NbrAnnulusNbrCircleNbrRectangle,NbrWedge

以下为可用邻域类型的形式:

  • NbrAnnulus({innerRadius}, {outerRadius}, {units})

    由内半径或外半径定义的环形(圆环形)邻域。 默认环形具有一个像元的内半径以及三个像元的外半径。

  • NbrCircle({radius}, {units}

    具有给定半径的圆形邻域。 默认半径为三个像元。

  • NbrRectangle({width}, {height}, {units})

    由高度和宽度定义的矩形邻域。 默认设置是高和宽为三个像元的正方形。

  • NbrWedge({radius}, {startAngle}, {endAngle}, {units})

    由半径、起始角度和终止角度定义的楔形邻域。 楔形按逆时针方向从起始角延伸到终止角。 角度以度为单位进行指定,0 或 360 的值表示东方。 也可使用负角度。 默认楔形起始角度为 0 度,终止角度为 90 度,半径为三个像元。

参数的距离单位可指定为 CELL 单位或 MAP 单位。 默认设置为“像元”单位。

默认邻域类型为高和宽为三个像元的 NbrRectangle

Neighborhood
statistics_type
(可选)

指定要计算的统计数据类型。

对位于每个输出栅格像元指定邻域中的点对应的指定字段值执行计算。

  • MEAN将计算每个邻域中字段值的平均值。
  • MAJORITY将识别每个邻域中出现频率最高的字段值。 如果出现频率相同,则使用较低的值。
  • MAXIMUM将识别每个邻域中的最大字段值。
  • MEDIAN将计算每个邻域中的中间字段值。 如果邻域中的点数为偶数,则结果将为两个中间值中的较小值。
  • MINIMUM将识别每个邻域中的最小字段值。
  • MINORITY将识别每个邻域中出现频率最低的字段值。 如果出现频率相同,则使用较低的值。
  • RANGE将计算每个邻域内字段值的范围(最大值和最小值之差)。
  • STD将计算每个邻域中字段值的标准差。
  • SUM将计算邻域内字段值的总和。
  • VARIETY将计算每个邻域中唯一字段值的数量。

默认统计类型为 MEAN

统计类型的可用选择取决于指定字段的数值型。 如果字段为整型,则所有统计类型均可用。 如果字段为浮点型,则仅可使用最大值、平均值、最小值、范围、标准差以及总和。

String

返回值

名称说明数据类型
out_raster

输出点统计数据栅格。

Raster

代码示例

PointStatistics 示例 1(Python 窗口)

此示例将为落在每个输出栅格像元周围的圆形邻域内的输入 shapefile 点要素确定统计数据(总和)。

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outPointStats = PointStatistics("ca_ozone_pts.shp", "OZONE", 500, 
                                NbrCircle(10000, "MAP"), "SUM")
outPointStats.save("C:/sapyexamples/output/pointstatsout")
PointStatistics 示例 2(独立脚本)

此示例将为落在每个输出栅格像元周围的圆形邻域内的输入 shapefile 点要素确定统计数据(平均值)。

# Name: PointStatistics_Ex_02.py
# Description: Calculates a statistic on points over a specified 
#    neighborhood outputting a raster.
# Requirements: Spatial Analyst Extension

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

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inPointFeatures = "ca_ozone_pts.shp"
field = "OZONE"
cellSize = 500
neighborhood = NbrCircle(6000, "MAP")

# Execute PointStatistics
outPointStatistics = PointStatistics(inPointFeatures, field, cellSize,
                                     neighborhood, "MEAN")

# Save the output 
outPointStatistics.save("C:/sapyexamples/output/pointstatout")