范围内汇总 (GeoAnalytics)

摘要

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

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

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

插图

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

使用情况

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

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

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

    输入要素描述选项

    每个面内的汇总点计数。

    线

    每个面内的汇总线长度。

    • 英里
    • 英尺
    • 千米

    每个面内的汇总面面积。

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

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

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

  • ArcGIS Enterprise10.6.1 及更高版本中,您可以使用按字段分组参数对组进行计算。除了汇总的面图层以外,此参数还将创建一个表格输出。

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

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

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

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

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

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

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

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

    字段名称描述
    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。

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

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

  • 此地理处理工具由 ArcGIS GeoAnalytics Server 作为支持。分析将在 GeoAnalytics Server 上完成,且结果将存储在 ArcGIS Enterprise 的内容中。

  • GeoAnalytics Server 工具运行时,GeoAnalytics Server 上的分析已完成。要获得最佳性能,通过 ArcGIS Enterprise 门户上托管的要素图层或通过大数据文件共享,可以将数据用于 GeoAnalytics Server。在分析开始之前,非 GeoAnalytics Server 本地数据将被转移到您的 GeoAnalytics Server。这意味着运行工具需要更长时间,并且在某些情况下,从 ArcGIS ProGeoAnalytics Server 移动数据可能会失败。失败的阈值取决于网络速度,以及数据的大小和复杂性。因此,建议您始终共享数据或创建大数据文件共享。

    了解有关将数据共享至您的门户的详细信息。

    了解有关通过 Server Manager 创建大数据文件共享的详细信息

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

参数

标注说明数据类型
汇总图层

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

Feature Set
输出名称

包含相交几何和属性的输出面要素服务的名称。

String
面或立方图格

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

  • 汇总图层将聚合到面数据集。
  • 图格汇总图层将聚合到运行此工具时生成的方形或六角图格。
String
立方图格类型

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

  • 正方形图格大小表示方形的高度。这是默认设置。
  • 六边形图格大小表示两条平行边之间的高度。
String
立方图格大小
(可选)

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

Linear Unit
汇总面
(可选)

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

Feature Set
添加形状汇总属性

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

  • 选中 - 将计算汇总形状值。这是默认设置。
  • 未选中 - 不计算汇总形状值。

Boolean
形状单位
(可选)

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

  • 形状单位将为米。
  • 千米形状单位将为公里。
  • 英尺形状单位将为英尺。
  • 形状单位将为码。
  • 英里形状单位将为英里。
  • 英亩形状单位将为英亩。
  • 公顷形状单位将为公顷。
  • 平方米形状单位将为平方米。
  • 平方千米形状单位将为平方公里。
  • 平方英尺形状单位将为平方英尺。
  • 平方码形状单位将为平方码。
  • 平方英里形状单位将为平方英里。
String
标准汇总字段
(可选)

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

Value Table
加权汇总字段
(可选)

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

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

指定将用于保存输出的 ArcGIS Data Store。默认设置为时空大数据存储。在时空大数据存储中存储的所有结果都将存储在 WGS84 中。在关系数据存储中存储的结果都将保持各自的坐标系。

  • 时空大数据存储输出将存储在时空大数据存储中。这是默认设置。
  • 关系数据存储输出将存储在关系数据存储中。
String
分组条件字段
(可选)

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

Field
添加少数和众数属性
(可选)

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

  • 未选中 - 将不添加少数和众数字段。这是默认设置。
  • 选中 - 将添加少数和众数字段。

Boolean
添加组百分比
(可选)

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

  • 未选中 - 将不添加百分比字段。这是默认设置。
  • 选中 - 将添加百分比字段。

Boolean

派生输出

标注说明数据类型
输出要素图层

每个面内的点的总数、线的长度或面的面积。

要素集
按汇总分组

一旦提供了按汇总分组,则此工具将针对每个唯一组输出含有计算统计数据的表格。

记录集

arcpy.geoanalytics.SummarizeWithin(summarized_layer, output_name, polygon_or_bin, bin_type, {bin_size}, {summary_polygons}, sum_shape, {shape_units}, {standard_summary_fields}, {weighted_summary_fields}, {data_store}, {group_by_field}, {add_minority_majority}, {add_percentages})
名称说明数据类型
summarized_layer

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

Feature Set
output_name

包含相交几何和属性的输出面要素服务的名称。

String
polygon_or_bin

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

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

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

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

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

Linear Unit
summary_polygons
(可选)

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

Feature Set
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
data_store
(可选)

指定将用于保存输出的 ArcGIS Data Store。默认为 SPATIOTEMPORAL_DATA_STORE。在时空大数据存储中存储的所有结果都将存储在 WGS84 中。在关系数据存储中存储的结果都将保持各自的坐标系。

  • SPATIOTEMPORAL_DATA_STORE输出将存储在时空大数据存储中。这是默认设置。
  • RELATIONAL_DATA_STORE输出将存储在关系数据存储中。
String
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

派生输出

名称说明数据类型
output

每个面内的点的总数、线的长度或面的面积。

要素集
group_by_summary

一旦提供了按汇总分组,则此工具将针对每个唯一组输出含有计算统计数据的表格。

记录集

代码示例

SummarizeWithin 示例(Python 窗口)

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

# Name: SummarizeWithin.py
# Description: Summarize river polylines by counties.
#			
# Requirements: ArcGIS GeoAnalytics Server
# Import system modules
import arcpy
# Set local variables
summarizedLayer = "https://MyGeoAnalyticsMachine.domain.com/geoanalytics/rest/services/DataStoreCatalogs/bigDataFileShares_Water/BigDataCatalogServer/Rivers"
summaryPolys = "https://MyGeoAnalyticsMachine.domain.com/geoanalytics/rest/services/DataStoreCatalogs/bigDataFileShares_Boundaries/BigDataCatalogServer/Counties"
summaryStatistics = ["Width", "MEAN"]
weighedSummaryStatistics = ["DOC", "SUM"]
outFS = 'SummarizedRivers'
dataStore = "SPATIOTEMPORAL_DATA_STORE"
# Execute SummarizeWithin
arcpy.geoanalytics.SummarizeWithin(summarizedLayer, outFS, "POLYGON", None, 
                                   None, summaryPolys,"ADD_SUMMARY", 
                                   "KILOMETERS", summaryStatistics, 
                                   weightedSummaryStatistics, dataStore)

环境

特殊情况

输出坐标系

将用于分析的坐标系。除非由该参数进行指定,否则将基于输入坐标系完成分析。对于 GeoAnalytics Tools,最终结果将存储于 WGS84 中的时空数据存储之内。

许可信息

  • Basic: 需要 ArcGIS GeoAnalytics Server
  • Standard: 需要 ArcGIS GeoAnalytics Server
  • Advanced: 需要 ArcGIS GeoAnalytics Server

相关主题