Skip To Content

Агрегировать точки

Агрегировать точки Инструмент Агрегировать точки использует полигональные объекты для суммирования набора точечных объектов. Границы полигональных объектов используются для выбора точек, которые попали в каждый из полигонов, и вычисления по ним дальнейшей статистики. Итоговый слой отображает точки в пределах каждого из полигонов.

Анализ с помощью GeoAnalytics Tools

Анализ, выполняемый с помощью GeoAnalytics Tools работает с использованием распределенной обработки по нескольким компьютерам ArcGIS GeoAnalytics Server и ядрам. GeoAnalytics Tools и стандартные инструменты анализа ArcGIS Enterprise имеют различные параметры и возможности. Более подробно об этих различиях см. в разделе Различия между инструментами анализа объектов.

Схема рабочего процесса

Схема работы инструмента Агрегировать точки

Примеры

Торнадо – это один из самых разрушительных типов штормов, которые случаются в США. Вам нужно узнать, каковы могут быть последствия торнадо, включая человеческие жертвы, число пострадавших, повреждения имущества и финансовые потери в каждом штате и каждом округе. У вас есть доступ к данным о прохождении торнадо по территории Штатов, но нужен наиболее удобный способ визуализации этих данных наряду с выбранными границами. Можно агрегировать данные торнадо по границам штатов и округов и нормализовать их по населению, чтобы понять, какие территории больше всего пострадают от торнадо.

Подсказка:

Если портал настроен для использования ресурсов ArcGIS Living Atlas, то вы сможете использовать слои штатов и округов ArcGIS Living Atlas, в которых содержатся данные о населении.

Примечания по использованию

Агрегировать точки используется для выбора и суммирования точечных объектов, попавших в пределы заданных границ. В качестве входных параметров необходимо указать точки, которые нужно просуммировать, и полигоны, в пределах которых это должно происходить.

Для анализа можно использовать полигональный слой или создать бины определенного размера и формы (шестиугольник или квадрат), в пределах которых будет происходить агрегирование. Размер бина определяет величину бинов. Если агрегация выполняется по гексагональной сетке, размером является высота каждого шестиугольника, а ширина полученного шестиугольника будет равна 2 высотам, деленным на квадратный корень из 3. Если агрегирование выполняется в квадраты, размером бина будет высота квадрата, которая равна ширине.

Шестиугольные и квадратные бины

Будут возвращены только те полигоны, которые содержат точки, и полученные в итоге полигоны будут полностью удалены из слоя результата.

Полигоны с точечными объектами
Входные точечные и полигональные объекты (слева) и полученные в результате полигональные объекты (справа).

В самом простом варианте при агрегации будет подсчитано количество точек, попавшее в пределы каждого полигона. Данные статистики (количество, минимум, максимум, диапазон, среднее, стандартное отклонение и дисперсия) могут также вычисляться для числовых полей, а данные статистики (количество, любые другие) могут вычисляться для текстовых полей. Для каждой области статистика будет вычислена отдельно.

Примечание:

Когда к полю применяется количество, в нем отображается число ненулевых значений, имеющихся в данном поле. Когда к текстовому полю применяется любые, в нем отображается единственная строка, присутствующая в данном поле.

Агрегировать точки позволяет выполнять анализ, используя временные шаги. Каждый временной шаг анализируется независимо от объектов вне этого шага. Чтобы использовать временной шаг, входные данные должны содержать информацию о времени и представлять момент времени. Когда применяются временные шаги, выходными объектами выступают интервалы времени, представленные полями START_DATETIME и END_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.

Агрегировать точки выполняет функции инструментов Пространственное соединение и Суммарная статистика.