范围内汇总 (GeoAnalytics Desktop)

描述

将一个面图层与另一个图层叠加,以便汇总各面内点的数量、线的长度或面的面积,并计算面内此类要素的属性字段统计数据。

以下为使用范围内汇总的示例场景:

  • 按土地使用类型给定分水岭边界和土地使用边界,计算每个分水岭的土地使用类型的总面积。
  • 给定县内宗地和城市边界,汇总各城市边界内闲置宗地的平均值。
  • 给定各县和道路,汇总各县内各种道路类型的道路总里程。

插图

范围内汇总
有关汇总面内的点(第一行)、面内的线(第二行)和面内的面(第三行)的示例

使用方法

  • 简而言之,范围内汇总将使用两个图层,输入面和输入汇总要素,并将其堆叠在彼此上方。堆叠这些图层后,您可查看叠加并计算落在输入面内的输入汇总要素的数量。您还可以计算关于输入汇总要素(总和、平均值、最小值、最大值等)属性的简单统计数据。

  • 使用范围内汇总计算标准统计数据以及地理加权统计数据。标准统计数据用于汇总统计值,而无需加权。加权统计数据可使用面内线的比例或面内面的比例的地理加权值来计算值。加权统计数据不适用于面内的点。

  • 您可以使用下表中的选项来计算每个面内汇总图层的长度和面积。可以根据汇总图层的几何进行选择。

    输入要素描述选项

    每个面内的汇总点计数。

    线

    每个面内的汇总线长度。

    • 英里
    • 英尺
    • 千米

    每个面内的汇总面面积。

    • 平方英里
    • 平方码
    • 平方英尺
    • 平方千米
    • 平方米
    • 公顷
    • 英亩
  • 您可以选择性地计算标准统计数据。对于线和面,要计算所有的加权统计数据。将标准汇总字段统计数据和加权汇总字段统计数据同时应用到汇总图层汇总面图层相交的要素数据中。加权汇总字段统计数据乘以基于汇总面汇总图层各要素相交比例的权重。

  • 对于标准统计数据,有八个选项:计数、总和、平均值、最小值、最大值、范围、标准差和方差。字符串统计数据有两个选项:计数和任意。有六个可根据待汇总图层中数值字段进行计算的加权统计数据:计数、总和、平均值、最小值、最大值和范围。

  • 加权统计数据不用于字符串数据的计算。每次指定字段统计数据时,工具窗格都将添加一行以便可以计算多个统计数据。您可以在结果图层的表或弹出窗口中查看汇总结果。默认情况下,始终计算与汇总面相交的要素计数。

  • 使用图格的分析要求您的输入已投影或输出坐标系设置为投影坐标系。如果您的数据不在投影坐标系中,并且未设置投影坐标系,则将根据您分析的数据范围使用投影。

  • 或者,也可以选择按字段分组值,以便分别为每个唯一属性值计算统计数据。选择按字段分组值时,系统还将创建汇总表,根据按字段分组值列出每个要素和统计数据。

  • 选择按字段分组值时,可以使用添加少数和众数属性添加组百分比参数。少数和多数分别是按字段分组中所占比例最小和最大的值,其中所占比例将通过每个值的点数、总长度或总面积来确定。

  • 选中添加少数和众数属性参数时,将有两个字段添加到结果图层。这些字段将列出按字段分组参数中各结果要素的少数值和多数值。

  • 仅当选择添加少数和众数属性时,才能使用添加组百分比参数。当选中添加组百分比参数时,结果图层中将添加两个字段,列出属于各要素少数值和多数值的点数、总长度或总面积的百分比。百分比字段也将添加到结果表中,列出点数、总长度或总面积(属于按字段分组参数中各要素的所有值)的百分比。

  • 对于加权统计数据,线图层仅使用汇总面内线要素的比例进行汇总。标准(非加权)统计数据将汇总一切与汇总面相交的线。当使用加权统计数据汇总线时,请使用计数和数量(而非比率或指数),这样分析中的比例计算才能符合逻辑。

  • 汇总面图层的加权统计数据基于汇总图层内的汇总面要素。当汇总面时,使用计数或数量(而非比率或指数),这样分析中的比例计算才能符合逻辑。

  • 输出要素图层始终是面图层。将仅返回与汇总图层相交的面。其他面将从结果图层中完全移除。

    包含点要素的所返回面
    显示输入点和面要素(左)以及生成的面要素(右)。

  • 以下是输出面要素中的字段:

    字段名称描述
    count

    与每个面图层相交的汇总要素的计数。

    sum_length_<linearunit>sum_area_<areaunit>

    面内线的总长度或每个面内汇总面的总面积。选择添加形状汇总属性时将以指定单位返回这些值。

    statistic_<fieldname>

    指定的统计信息将各自创建一个属性字段,并按照以下格式命名:<statistic>_<fieldname>。例如,id 字段的最大值和标准差为 MAX_idSD_id

    pstatistic_<fieldname>

    指定的加权统计信息将各自创建一个属性字段,并按照以下格式命名:p<statistic>_<fieldname>。例如,字段 id 的加权最大值为:pMAX_id

    minority_<fieldname>

    当您创建分组依据表并选择添加少数和众数属性时,将返回此值。此值表示每个面中作为少数的指定字段值。例如,一个面中有五个具有名为 color 字段的点,值分别为 red、blue、blue、green、green。如果您按照 color 字段来创建组,则 minority_color 字段的值为 red。

    majority_<fieldname>

    当您创建分组依据表并选择添加少数和众数属性时,将返回此值。此值表示每个面中作为众数的指定字段值。例如,一个面中有五个具有名为 color 字段的点,值分别为 red、blue、blue、green、green。如果您按照 color 字段来创建组,则 minority_color 字段的值为 blue;green。

    minority_<fieldname>_percent

    当您创建分组依据表并选择添加组百分比时,将返回此值。此值表示每个面中作为少数的指定字段的计数百分比。例如,一个面中有五个具有名为 color 字段的点,值分别为 red、blue、blue、green、green。如果您按照 color 字段来创建组,则 minority_color_percent 字段的值为 20(计算为 1/5)。

    majority_<fieldname>_percent

    当您创建分组依据表并选择添加组百分比时,将返回此值。此值表示每个面中作为众数的指定字段的计数百分比。例如,一个面中有五个具有名为 color 字段的点,值分别为 red、blue、blue、green、green。如果您按照 color 字段来创建组,则 majority_color_percent 字段的值为 40(计算为 2/5)。

    join_id

    创建分组依据表时,将返回此值。这是将要素链接到分组依据表中的 ID。每个 join_id 字段对应分组依据表中的一行或多行。

    输出分组依据表中包括以下字段:

    字段名称描述

    join_id

    这是将要素链接到面图层的 ID。每个面将有一个或多个具有相同 ID 的要素,表示所有分组依据值。例如,一个面中有五个具有名为 color 字段的点,值分别为 red、blue、blue、green、green。分组依据表将有三行表示面(连接 ID 相同),每行分别表示红色、蓝色和绿色其中一种颜色。

    count

    已连接面内指定组的计数。例如,对于选定面,红色为 1。

    <statistic>_<fieldname>

    为每个组计算的任何指定统计数据。

    p<statistic>_<fieldname>

    为每个组计算的任何指定加权统计数据。

    percentcount

    每组占面中总计数的百分比。按上例所述,红色占 1/5 = 20,蓝色占 2/5 = 40,绿色占 2/5 = 20。

  • 您可以使用以下一个或多个提示来提升范围内汇总工具的性能:

    • 设置范围环境,以便仅分析感兴趣的数据。
    • 如果您使用立方图格,则较大的立方图格比较小的图格性能更佳。如果不确定使用哪种大小,可从较大的立方图格开始原型化。
    • 本地数据用于分析运行的位置。

  • 此地理处理工具由 Spark 作为支持。可在台式计算机上并行使用多个核来完成分析。要了解有关运行分析的详细信息,请参阅 GeoAnalytics Desktop 工具的注意事项

  • 运行 GeoAnalytics Desktop 工具时,将在台式计算机上完成分析。为获得最佳性能,应在桌面上提供数据。如果您使用的是托管要素图层,则建议使用 ArcGIS GeoAnalytics Server。如果您的数据不是本地数据,则运行工具需要更长时间。要使用 ArcGIS GeoAnalytics Server 执行分析,请参阅 GeoAnalytics 工具

  • 类似的分析也可使用 ArcGIS Pro“标准要素分析”工具箱中的范围内汇总工具来完成。

语法

arcpy.gapro.SummarizeWithin(summarized_layer, out_feature_class, polygon_or_bin, bin_type, {bin_size}, {summary_polygons}, sum_shape, {shape_units}, {standard_summary_fields}, {weighted_summary_fields}, {group_by_field}, {add_minority_majority}, {add_percentages}, {group_by_summary})
参数说明数据类型
summarized_layer

将按面或图格进行汇总的点、线或面要素。

Feature Layer
out_feature_class

将包含相交几何和属性的输出要素类的名称。

Feature Class
polygon_or_bin

用于指定是否按面或图格对 summarized_layer 进行汇总。

  • POLYGON汇总图层将聚合到面数据集。
  • BIN汇总图层将聚合到方形或六角图格。
String
bin_type

指定将生成以汇总要素的图格形状。

  • SQUAREbin_size 表示方形的高度。这是默认设置。
  • HEXAGONbin_size 表示两条平行边之间的高度。
String
bin_size
(可选)

表示图格大小和汇总输入要素时所采用单位的距离间隔。

Linear Unit
summary_polygons
(可选)

用于汇总输入汇总图层内要素的面。

Feature Layer
sum_shape

指定是要计算汇总图层(面或图格)内线的长度还是面的面积。将始终包括与汇总形状相交的点、线和面的计数。

  • ADD_SUMMARY将计算汇总形状值。这是默认设置。
  • NO_SUMMARY不计算汇总形状值。
Boolean
shape_units
(可选)

指定要用于计算形状汇总属性的单位。如果输入 summarized_layer 为点,则不需要使用形状单位,因为仅添加各输入面内点的计数。如果输入汇总要素为线,则指定一个线性单位。如果输入汇总要素为面,则指定一个面积单位。

  • METERS形状单位将为米。
  • KILOMETERS形状单位将为公里。
  • FEET形状单位将为英尺。
  • YARDS形状单位将为码。
  • MILES形状单位将为英里。
  • ACRES形状单位将为英亩。
  • HECTARES形状单位将为公顷。
  • SQUARE_METERS形状单位将为平方米。
  • SQUARE_KILOMETERS形状单位将为平方公里。
  • SQUARE_FEET形状单位将为平方英尺。
  • SQUARE_YARDS形状单位将为平方码。
  • SQUARE_MILES形状单位将为平方英里。
String
standard_summary_fields
[standard_summary_fields,...]
(可选)

将根据指定字段进行计算的统计数据。

  • COUNT - 非空值的数目。可用于数值字段或字符串。[null, 0, 2] 的计数为 2
  • SUM - 字段内数值的总和。[null, null, 3] 的总和为 3
  • MEAN - 数值的平均值。[0,2, null] 的平均值为 1
  • MIN - 数值字段的最小值。[0, 2, null] 的最小值为 0
  • MAX - 数值字段的最大值。[0, 2, null] 的最大值为 2
  • STDDEV - 数值字段的标准差。[1] 的标准差为 null[null, 1,1,1] 的标准差为 null
  • VAR - 轨迹中数值字段内数值的方差。[1] 的方差为 null[null, 1,1,1] 的方差为 null
  • RANGE - 数值字段的范围。其计算方法为最大值减去最小值。[0, null, 1] 的范围为 1[null, 4] 的范围为 0
  • ANY - 字符串型字段中的示例字符串。

Value Table
weighted_summary_fields
[weighted_summary_fields,...]
(可选)

指定将根据指定字段进行计算的加权统计数据。

  • COUNT将计算乘以面内汇总图层的比例后的每个字段的计数。
  • SUM将计算每个字段内加权值的总和,其中所应用的权重是面内汇总图层的比例。
  • MEAN将计算每个字段内加权值的平均值,其中所应用的权重是面内汇总图层的比例。
  • MIN将计算每个字段中的最小加权值,其中所应用的权重是面内汇总图层的比例。
  • MAX将计算每个字段中的最大加权值,其中所应用的权重是面内汇总图层的比例。
  • RANGE将计算 MINMAX 之间的差值。
Value Table
group_by_field
(可选)

输入汇总要素中的字段,将用于计算每个唯一属性值的统计数据。例如,输入汇总要素包含存储危险材料的企业的点位置,且其中一个字段为 HazardClass,字段中含有用于描述所存储危险材料类型的代码。要根据每个 HazardClass 唯一值计算汇总,请将其用作分组条件字段。

Field
add_minority_majority
(可选)

用于指定是否添加各个边界内每个组字段的少数(所占比例最小)或众数(所占比例最大)属性值。如果添加,则前缀为众数_和少数_的两个新字段将添加至输出图层。此参数仅当使用 group_by_field 参数时适用。

  • NO_MIN_MAJ将不添加少数和众数字段。这是默认设置。
  • ADD_MIN_MAJ将添加少数和众数字段。
Boolean
add_percentages
(可选)

用于指定是否将添加百分比字段。如果添加,则系统将针对每个输入面计算每个唯一组百分比值。此参数仅当使用 group_by_fieldadd_minority_majority 参数时适用。

  • NO_PERCENT将不添加百分比字段。这是默认设置。
  • ADD_PERCENT将添加百分比字段。
Boolean
group_by_summary
(可选)

将包含按汇总分组的输出表。

Table

代码示例

SummarizeWithin 示例(Python 窗口)

以下 Python 窗口脚本演示了如何使用 SummarizeWithin 工具。

#-------------------------------------------------------------------------------
# Name: SummarizeWithin.py
# Description: Summarize river polylines by counties.
# Import system modules
import arcpy
arcpy.env.workspace = "C:/data/RedRiver_basin.gdb"
# Set local variables
summarizedLayer = "Rivers"
summaryPolys = "Basins"
summaryStatistics = [["Width", "MEAN"]]
weighedSummaryStatistics = [["DOC", "SUM"]]
out = 'SummarizedRivers'
# Execute SummarizeWithin
arcpy.gapro.SummarizeWithin(summarizedLayer, out, "POLYGON", None, 
                            None, summaryPolys, "ADD_SUMMARY", 
                            "KILOMETERS", summaryStatistics, 
                            weightedSummaryStatistics)

许可信息

  • Basic: 否
  • Standard: 否
  • Advanced: 是

相关主题