Подпись | Описание | Тип данных |
Входной слой | Точки, которые будут использоваться для вычисления плотности. | Feature Layer |
Выходной класс пространственных объектов | Новый класс пространственных объектов с вычисленными плотностями. | Feature Class |
Тип бина | Задает форму бина, используемого в анализе.
| String |
Размер бина | Размер бинов, используемых для аггрегирования входных объектов. При генерации квадратных бинов, заданное число и единицы измерения определяют размеры квадрата. Для шестиугольных бинов, число и единицы измерения определяют расстояние между параллельными сторонами. | Linear Unit |
Вес | Указывает веса, которые будут применяться для функции плотности.
| String |
Размер окрестности | Радиус поиска, который будет применен к вычислению плотности. | Linear Unit |
Поля (Дополнительный) | Одно или более полей, указывающих значения распределения для каждого объекта. Поле распределения содержит значения количества или подсчета, которые должны быть распределены по ландшафту для построения непрерывной поверхности. Значения в поле распределения должны быть числовыми. По умолчанию всегда будет вычислена плотность количества входных точек. | Field |
Масштабный коэффициент единиц измерения площади (Дополнительный) | Задает единицы площади, которые будут использоваться для значений выходной плотности. По умолчанию единицы измерения основываются на единицах выходной пространственной привязки.
| String |
Интервал временного шага (Дополнительный) | Значение длительности временного шага. Этот параметр доступен только если у входных точек активировано время и представлено определённое время. Временные шаги могут применяться, только если во входных данных используется время. | Time Unit |
Повтор временного шага (Дополнительный) | Значение, задающее частоту интервалов временного шага. Этот параметр доступен только если у входных точек активировано время и представлено определённое время. | Time Unit |
Начало отсчета временных шагов (Дополнительный) | Дата, задающая базовое время, по которому выравниваются временные шаги. По умолчанию это 1 января 1970, 00:00 часов. Этот параметр доступен только если у входных точек активировано время и представлено определенное время. | Date |
Краткая информация
Вычисляет величину на единицу площади по точечным объектам, попадающим в окрестность вокруг каждой ячейки.
Иллюстрация
Использование
-
Инструменту Вычислить плотность необходимы отдельные входные точечные объекты.
-
Плотность может быть вычислена с помощью одного или нескольких полей количества. Поле чисел – это числовое поле, определяющее число событий в каждом местоположении. Объекты, такие как города или автомагистрали, могут использовать поле чисел при вычислении плотности населения или полос трафика, соответственно. Если вы указали поле чисел, то плотность может быть вычислена для поля чисел в дополнение к плотности точек.
-
Входные точки агрегируются для анализа в бины. Вы должны указать размер бина, чтобы агрегировать туда данные. По умолчанию, выходные данные даются в километрах.
-
Входные точки агрегируются в бины указанного размера и формы (шестиугольник или квадрат). Если агрегация выполняется по гексагональной сетке, размером бина d является высота каждого шестиугольника, а ширина полученного шестиугольника будет равна 2 высотам, делённым на квадратный корень из 3. Если агрегирование выполняется в квадраты, размером бина d будет высота квадрата, которая равна ширине.
-
Вы должны указать размер соседства, которое больше, чем размер бина. Размер окрестности будет использоваться для того, чтобы найти входные объекты в пределах той же окрестности, что и у объекта (бина) интереса.
Более высокие значения размера окрестности приводят к построению более генерализованной плотности. Более низкие значения производят выходные данные, показывающие большее количество деталей.
При вычислении плотности учитываются только те точки, которые попадают в заданную область соседства. Если в окрестность определенной ячейки точки не попадают, этой ячейке значение не присваивается.
-
Есть две опции весов для вычисления плотности: опция Универсально суммирует все значения в пределах соседства и делит их на площадь. Опция Ядро взвешивает значения в соседстве по расстоянию от объекта интереса и применяет функцию кернела, чтобы подогнать к сглаживанию поверхности для каждой точки.
-
Возвращены будут лишь области в пределах соседства бина, содержащие точки.
Если масштабный коэффициент единиц измерения площади мал относительно расстояний между точками, то выходные значения могут также быть очень маленькими. Чтобы получить более высокие значения, выберите коэффициент масштаба для единиц площади для более крупных единиц измерения (например, Квадратные километры, а не Квадратные метры).
Для анализа с бинами надо, чтобы входные данные были спроецированы или чтобы выходная система координат была задана как система координат проекции. Если данные не используют систему координат проекции, и вы не задали ее, проекция будет выбрана на основе экстента анализируемых данных.
Значения плотности всегда будут значениями с плавающей точкой.
-
Вычислить плотность позволяет выполнять анализ, используя временные шаги. Каждый временной шаг анализируется независимо от объектов вне этого шага. Чтобы использовать временной шаг, входные данные должны содержать информацию о времени и представлять момент времени. Когда применяются временные шаги, выходными объектами выступают интервалы времени, представленные полями.
Когда входные объекты анализируются с применением временных шагов, каждый шаг анализируется независимо от наличия объектов вне этого шага.
Для параметра Базовый временной шаг может быть указана дата и время или только дата; только значение времени не может быть указано.
В выходные объекты будут добавлены следующие поля:
Имя поля Описание density
Плотность заданного полигона. Возвращается в виде заданного коэффициента масштабирования.
density_<fieldname>
Плотность, взвешенная по заданному полю. Возвращается только при задании одного или нескольких полей.
start_date
При задании временного шага, выходные полигоны будут содержать временной интервал. Это поле представляет время начала.
end_date
При задании временного шага, выходные полигоны будут содержать временной интервал. Это поле представляет время окончания.
Вы можете повысить производительность инструмента Вычислить плотность, выполнив следующие действия:
- Установите параметр среды Экстент так, чтобы вы анализировали только интересующие вас данные.
- Более крупные бины повышают производительность, по сравнению с более мелкими. Если вы не уверены относительно начального размера, выберите более крупный бин.
- Так же, как с бинами, более крупные временные интервалы повышают производительность, по сравнению с более мелкими.
- Уменьшите отношение размера окрестности к размеру бина. Размер окрестности в три раза больше размера бина имеет большую производительность, чем окрестность, превышающая размер бина в 10 раз.
- Используйте локальные данные там, где запускается анализ.
Этот инструмент геообработки работает от Spark. Анализ выполняется на настольном компьютере с использованием нескольких ядер параллельно. См. Информация по инструментами GeoAnalytics Desktop, чтобы узнать больше о выполнении анализа.
При запуске инструментов GeoAnalytics Desktop анализ выполняется на настольном компьютере. Для оптимальной производительности данные должны быть доступны на настольном компьютере. Если используется размещенный векторный слой, рекомендуется применить ArcGIS GeoAnalytics Server. Если данные находятся не на жестком диске, для запуска инструмента потребуется больше времени. Чтобы использовать ArcGIS GeoAnalytics Server для выполнения анализа, см. GeoAnalytics Tools.
Аналогичный анализ можно выполнить следующим образом:
- Агрегировать точки в наборе инструментов GeoAnalytics Desktop или в наборе инструментов GeoAnalytics Server
- Инструмент Плотность точек в наборе инструментов Spatial Analyst
- Инструмент Плотность ядер в наборе инструментов Spatial Analyst
- Инструмент Вычислить плотность в наборе инструментов Стандартный анализ объектов
Параметры
arcpy.geoanalytics.CalculateDensity(input_layer, out_feature_class, bin_type, bin_size, weight, neighborhood_size, {fields}, {area_unit_scale_factor}, {time_step_interval}, {time_step_repeat}, {time_step_reference})
Имя | Описание | Тип данных |
input_layer | Точки, которые будут использоваться для вычисления плотности. | Feature Layer |
out_feature_class | Новый класс пространственных объектов с вычисленными плотностями. | Feature Class |
bin_type | Задает форму бина, используемого в анализе.
| String |
bin_size | Размер бинов, используемых для аггрегирования входных объектов. При генерации квадратных бинов, заданное число и единицы измерения определяют размеры квадрата. Для шестиугольных бинов, число и единицы измерения определяют расстояние между параллельными сторонами. | Linear Unit |
weight | Указывает веса, которые будут применяться для функции плотности.
| String |
neighborhood_size | Радиус поиска, который будет применен к вычислению плотности. | Linear Unit |
fields [fields,...] (Дополнительный) | Одно или более полей, указывающих значения распределения для каждого объекта. Поле распределения содержит значения количества или подсчета, которые должны быть распределены по ландшафту для построения непрерывной поверхности. Значения в поле распределения должны быть числовыми. По умолчанию всегда будет вычислена плотность количества входных точек. | Field |
area_unit_scale_factor (Дополнительный) | Задает единицы площади, которые будут использоваться для значений выходной плотности. По умолчанию единицы измерения основываются на единицах выходной пространственной привязки.
| String |
time_step_interval (Дополнительный) | Значение длительности временного шага. Этот параметр доступен только если у входных точек активировано время и представлено определённое время. Временные шаги могут применяться, только если во входных данных используется время. | Time Unit |
time_step_repeat (Дополнительный) | Значение, задающее частоту интервалов временного шага. Этот параметр доступен только если у входных точек активировано время и представлено определённое время. | Time Unit |
time_step_reference (Дополнительный) | Дата, задающая базовое время, по которому выравниваются временные шаги. По умолчанию это 1 января 1970, 00:00 часов. Этот параметр доступен только если у входных точек активировано время и представлено определенное время. | Date |
Пример кода
В следующем автономном скрипте показано использование функции CalculateDensity.
# Name: CalculateDensity.py
# Description: Calculate density using the count of points as well as the severity
# value of outbreaks by week.
# Import system modules
import arcpy
arcpy.env.workspace = "C:/data/HealthInfo.gdb"
# Enable time on the input features using an .lyrx file.
# To create the .lyrx file, add your layer to a map, open the layer properties
# and enable time. Then right-click the layer and select Share As Layer File.
inputLyrx = r'C:\data\outbreaks.lyrx'
# MakeFeatureLayer converts the .lyrx to features
outbreaksLayer = arcpy.management.MakeFeatureLayer(inputLyrx, "outbreaks_layer")
# ApplySymbologyFromLayer sets the time using the .lyrx file definition
arcpy.management.ApplySymbologyFromLayer(outbreaksLayer, inputLyrx)
# By default, the count of points will be used in addition to any other fields
# that are specified
fields = "Severity"
# Set the size of bins and neighborhood and the time step size
binSize = "1 Kilometers"
neighborhoodSize = "2 Kilometers"
timeStepInterval = "1 Weeks"
# Specify output info
out = "OutbreakDensity"
# Run Calculate Density
arcpy.gapro.CalculateDensity(outbreaksLayer, out, 'HEXAGON', binSize,
'UNIFORM', neighborhoodSize, fields,
'SQUARE_KILOMETERS', timeStepInterval)