Skip To Content

聚合点

注:

目前,此功能仅在 Map Viewer 经典版(之前称为 Map Viewer)中受支持。 该功能将在新 Map Viewer 的未来版本中提供。

聚合点 聚合点工具使用面要素汇总一组点要素。 面要素的边界用于收集每个区域内的点以计算统计数据。 生成的图层将显示每个区域内的点数。

使用 GeoAnalytics Tools 进行的分析

通过跨多个 ArcGIS GeoAnalytics Server 计算机和核心组件的分布式处理来运行使用 GeoAnalytics Tools 进行的分析。GeoAnalytics ToolsArcGIS Enterprise 中标准要素分析工具的参数和功能不同。要了解有关这些差别的详细信息,请参阅要素分析工具差别

工作流示意图

聚合点工作流示意图

示例

在美国,龙卷风是最具破坏力的风暴之一。 您想要了解龙卷风在各州各县造成的影响,包括人员伤亡、财产损失和经济损失。 您可以获取美国境内的龙卷风位置,但是您需要一个更好的方法来对所选边界范围内的数据进行可视化。 您可以将龙卷风数据聚合到州县边界,并按人口对数据进行规范化,从而找到受龙卷风影响最为严重的区域。

提示:

如果您的门户配置为使用 ArcGIS Living Atlas 内容,则可以使用 ArcGIS Living Atlas 州县图层,其中包含人口数据。

用法说明

聚合点用于在一组边界范围内收集并汇总点要素。 输入参数必须包括要聚合的点和聚合区域。

您可以提供要用于分析的区域图层,也可以生成要聚合到的指定大小和形状(六边形或正方形)的条柱。 图格大小将指定图格的大小。 如果聚合到六边形,则大小为每个六边形的高度,而所生成六边形的宽度为高度除以根号 3 再乘以 2。 如果要聚合到正方形,则图格大小为正方形的高度(等于宽度)。

六边形或方形条柱

仅将返回包含点的区域,生成的区域将完全从结果图层中移除。

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

通过最基本的聚合,将对每个边界中的点数进行计算。 统计数据(计数、总和、最小值、最大值、范围、平均值、标准差和方差)还可以根据数值字段进行计算;统计数据(计数、任意)可根据字符串字段进行计算。 将分别计算每个区域的统计数据。

注:

计数应用于字段时,其将返回存在于字段中的非空值的计数。 将任意应用于字段时,其将返回存在于字段中的单个字符串。

聚合点可用于使用时间步长选择性地进行分析。 每个时间步长将独立于时间步长外的要素进行分析。 要使用时间步长,输入数据必须已启用时间且能够表示时刻。 应用时间步长后,输出要素将为字段 START_DATETIMEEND_DATETIME 表示的时间间隔。

了解有关时间步长的详细信息

聚合点要求您的区域图层位于投影坐标系中。 如果您的数据不在投影坐标系中,并且未设置投影处理坐标系,则将根据您分析的数据范围选择投影。

如果选中使用当前地图范围,则仅对当前地图范围中可见的要素进行分析。如果未选中,则将分析输入图层中的所有输入要素,包括超出当前地图范围的要素。

局限性

输入必须包括点图层。 要聚合到的区域必须含有区域图层或条柱。 线和面无法通过聚合点工具聚合到区域。

聚合点的工作原理

等式

方差由下列等式计算得出:

方差方程
方差变量

标准差由方差的平方根计算得出。

计算

点图层仅使用与输入边界相交的点要素进行汇总。 结果显示为蓝色,并可使用分级符号根据计算得出的统计数据进行符号化。

以下图表说明了区域边界内点图层的统计计算过程。 Population 字段用于计算图层的统计数据(计数总和最小值最大值范围平均值标准差方差)。 Type 字段用于计算图层的统计数据(计数任意)。

聚合点图层
点图层仅使用位于边界图层范围内的点进行汇总。 上方显示的示例属性表中的值将用于此假设统计计算中。

数值统计数据结果区 A

计数

计数:

[280, 408, 356, 361, 450, 713] = 6

总和

280 + 408 + 356 + 361 + 450 + 713 = 2568

最小值

最小值:

[280, 408, 356, 361, 450, 713] = 280

最大值

最大值:

[280, 408, 356, 361, 450, 713] = 713

平均值

2,568/6 = 428

方差

点的方差
= 22737.2

标准差

点的标准差
= 150.7886

字符串统计数据结果区 A

计数

= 6

任何

= 中学

计数统计(针对字符串和数值字段)用于计算非空值的数量。以下值的计数等于 5:[0, 1, 10, 5, null, 6] = 5。该组值的计数等于 3:[Primary, Primary, Secondary, null] = 3

在现实场景中,可使用此分析确定每个学区中学生的总数。 每个点表示一所学校。 Type 字段给出了学校类型(小学、中学或高中),学生人数字段给出了每所学校招收的学生人数。 上表给出了针对区域 A 的运算和结果。 从结果中,您可以看到区域 A 中有 2568 名学生。 运行聚合点工具时,也会给出区域 B 的结果。

ArcGIS API for Python 示例

可通过 ArcGIS API for Python 获取聚合点工具。

本示例可将犯罪数据集聚合到人口普查区域的区域图层。 可用于计算每个面的现场人员总数。

# Import the required ArcGIS API for Python modules
import arcgis
from arcgis.gis import GIS
from arcgis.geoanalytics import summarize_data

# Connect to your ArcGIS Enterprise portal and confirm that GeoAnalytics is supported
portal = GIS("https://myportal.domain.com/portal", "gis_publisher", "my_password", verify_cert=False)

if not portal.geoanalytics.is_supported():
    print("Quitting, GeoAnalytics is not supported")
    exit(1)   

# Find the big data file share dataset you'll use for analysis
search_result = portal.content.search("", "Big Data File Share")

# Look through the search results for a big data file share with the matching name 
bdfs_search = next(x for x in search_result if x.title == "bigDataFileShares_myBigDataFileShare")

# Look through the big data file share for a dataset called Crimes
crime_data = next(x for x in bdfs_search.layers if x.properties.name == "Crimes")

# Find a feature layer named Census_Tracts in your ArcGIS Enterprise portal
census_tract_search_result = portal.content.search("Census_Tracts", "Feature Layer")
census_tract_layer = census_tract_search_result[0].layers[0]

# Set the environment settings for this tool to run
arcgis.env.verbose = True

# Run the Aggregate Points tool
crime_data_aggregate = summarize_data.aggregate_points(point_layer = crime_data, 
                                                       polygon_layer = census_tract_layer,
                                                       summary_fields = [{'statisticType' : 'Sum', 
                                                                          'onStatisticField' : 'OfficersOnSite'}],
                                                       output_name = 'Crime_Data_Aggregated')

# Visualize the tool results if you are running Python in a Jupyter Notebook
processed_map = portal.map('MyCity, State', 10)
processed_map.add_layer(crime_data_aggregate)
processed_map

类似工具

使用聚合点来汇总区域内的点。 其他工具或许在解决略有差异的类似问题时十分有用。

Map Viewer 经典版 分析工具

如果您正在尝试将线或面汇总到区域或条柱中,请使用 GeoAnalytics Tools 范围内汇总

如果您正在尝试使用不同的空间关系对点、线或面进行汇总,请使用 GeoAnalytics Tools 连接要素

如果您正在尝试对线或面进行汇总,请使用标准工具范围内汇总

如果要使用标准分析工具将点聚合到面中,请参阅聚合点

ArcGIS Desktop 分析工具

GeoAnalytics Tools 聚合点适用于 ArcGIS Pro

聚合点可执行空间连接汇总统计数据工具的功能。