Сводка
Вычисляет величину на единицу площади по точечным объектам, попадающим в окрестность вокруг каждой ячейки.
Иллюстрация
Использование
Инструменту Вычислить плотность необходимы отдельные входные точечные объекты.
Плотность может быть дополнительно вычислена с помощью одного или нескольких полей чисел. Поле чисел – это числовое поле, определяющее число событий в каждом местоположении. Объекты, такие как города или автомагистрали, могут использовать поле чисел при вычислении плотности населения или полос трафика, соответственно. Если вы указали поле чисел, то плотность может быть вычислена для поля чисел в дополнение к плотности точек.
Входные точки агрегируются для анализа в бины. Вы должны указать размер бина, чтобы агрегировать туда данные. По умолчанию, выходные данные даются в километрах.
Входные точки агрегируются в бины указанного размера и формы (шестиугольник или квадрат). Если агрегация выполняется по гексагональной сетке, размером бина d является высота каждого шестиугольника, а ширина полученного шестиугольника будет равна 2 высотам, делённым на квадратный корень из 3. Если агрегирование выполняется в квадраты, размером бина d будет высота квадрата, которая равна ширине.
Вы должны указать размер соседства, которое больше, чем размер бина. Размер соседства используется для того, чтобы найти входные объекты в пределах того же соседства, что и объект (бин) интереса.
Более высокие значения размера окрестности приводят к построению более генерализованной плотности. Более низкие значения производят выходные данные, показывающие большее количество деталей.
При вычислении плотности учитываются только те точки, которые попадают в заданную область соседства. Если в окрестность определенной ячейки точки не попадают, этой ячейке значение не присваивается.
Есть две опции весов для вычисления плотности: опция Универсально суммирует все значения в пределах соседства и делит их на площадь. Опция Ядро взвешивает значения в соседстве по расстоянию от объекта интереса и применяет функцию кернела, чтобы подогнать к сглаживанию поверхности для каждой точки.
Возвращены будут лишь области в пределах соседства бина, содержащие точки.
Если масштабный коэффициент единиц измерения площади мал относительно расстояний между точками, то выходные значения могут также быть очень маленькими. Чтобы получить более высокие значения, выберите коэффициент масштаба для единиц площади для более крупных единиц измерения (например, Квадратные километры, а не Квадратные метры).
Для анализа с биннингом необходимо, чтобы ваши входные данные были спроецированы, или чтобы выходная система координат была задана как система координат проекции. Если данные не используют систему координат проекции, а вы ее не задали, проекция будет выбрана на основе экстента анализируемых данных.
Значения плотности всегда будут значениями с плавающей точкой.
Вычислить плотность позволяет выполнять анализ, используя временные шаги. Каждый временной шаг анализируется независимо от объектов вне этого шага. Чтобы использовать временной шаг, входные данные должны содержать информацию о времени и представлять момент времени. Когда применяются временные шаги, выходными объектами выступают интервалы времени, представленные полями.
Когда входные объекты анализируются с применением временных шагов, каждый шаг анализируется независимо от наличия объектов вне этого шага.
Для параметра Базовый временной шаг может быть указана дата и время или только дата; только значение времени не может быть указано.
В выходные объекты будут добавлены следующие поля:
Имя поля Описание density
Плотность заданного полигона. Возвращается в виде заданного коэффициента масштабирования.
density_<fieldname>
Плотность, взвешенная по заданному полю. Возвращается только при задании одного или нескольких полей.
start_date
При задании временного шага, выходные полигоны будут содержать временной интервал. Это поле представляет время начала.
end_date
При задании временного шага, выходные полигоны будут содержать временной интервал. Это поле представляет время окончания.
Вы можете повысить производительность инструмента Вычислить плотность, используя следующие советы:
- Задайте параметр среды экстента, чтобы анализировать только данные области интереса.
- Более крупные бины повышают производительность, по сравнению с более мелкими. Если вы не уверены относительно начального размера, выберите более крупный бин.
- Так же, как с бинами, более крупные временные интервалы повышают производительность, по сравнению с более мелкими.
- Уменьшите отношение размера окрестности к размеру бина. Размер окрестности в три раза больше размера бина имеет большую производительность, чем окрестность, превышающая размер бина в 10 раз.
- Используйте локальные данные там, где выполняется анализ.
Этот инструмент геообработки работает от Spark. Анализ выполняется на настольном компьютере с использованием нескольких ядер параллельно. См. Информация по инструментами GeoAnalytics Desktop, чтобы узнать больше о выполнении анализа.
При запуске инструментов GeoAnalytics Desktop анализ выполняется на настольном компьютере. Для оптимальной производительности данные должны быть доступны на настольном компьютере. Если вы используете размещенный векторный слой, рекомендуется использовать ArcGIS GeoAnalytics Server. Если данные находятся не на жестком диске, для запуска инструмента потребуется больше времени. Для использования ArcGIS GeoAnalytics Server в целях выполнения анализа см. раздел Инструменты GeoAnalytics.
Аналогичный анализ можно выполнить следующим образом:
- Агрегировать точки в наборе инструментов GeoAnalytics Desktop или в наборе инструментов GeoAnalytics Server
- Инструмент Плотность точек в наборе инструментов Spatial Analyst
- Инструмент Плотность ядер в наборе инструментов Spatial Analyst
- Инструмент Вычислить плотность в наборе инструментов Стандартный анализ объектов
Синтаксис
arcpy.gapro.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})
Parameter | Объяснение | Тип данных |
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 |
Пример кода
В следующем скрипте окна Python показано, как используется инструмент CalculateDensity.
#-------------------------------------------------------------------------------
# Name: Calculate Density.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"
# Set local variables
inFeatures = "Outbreaks"
# 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 = "OutbreakDenisty"
# Execute Calculate Density
arcpy.gapro.CalculateDensity(inFeatures, out, 'HEXAGON', binSize,
'UNIFORM', neighborhoodSize, fields,
'SQUARE_KILOMETERS', timeStepInterval)
Environments
Информация о лицензиях
- Basic: Нет
- Standard: Нет
- Advanced: Да