Плотность ядер (Spatial Analyst)

Краткая информация

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

Более подробно о том, как работает инструмент Плотность ядер

Иллюстрация

Иллюстрация инструмента Плотности ядер
OutRas = KernelDensity(InPts, None, 30)

Использование

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

  • Параметр Размер выходной ячейки может быть задан числовым значениям или получен из имеющегося набора растровых данных. Если размер ячейки не был явно указан в качестве значения параметра, он извлекается из среды Размер ячейки, если он был указан. Если параметр размера ячейки или параметр среды размера ячейки не были заданы, но задан параметр среды Растр привязки, используется размер ячейки растра привязки. Если нечего не задано, размер ячейки рассчитывается как меньшее из значений ширины или высоты экстента, деленных на 250, в которых экстент находится в выходной системе координат, указанной в параметрах среды.

  • Если размер ячейки задан с использованием числового значения, инструмент будет использовать его непосредственно для выходного растра.

    Если размер ячейки задан с использованием набора растровых данных, параметр покажет путь к набору растровых данных вместо значения размера ячейки. Размер ячейки этого набора растровых данных будет использоваться непосредственно в анализе при условии, что пространственная привязка набора данных совпадает с выходной пространственной привязкой. Если пространственная привязка набора данных отличается от выходной пространственной привязки, она будет спроецирована на основе значения Метод проецирования размера ячейки.

  • Более высокие значения параметра Радиус поиска (search_radius в Python) приводят к построению более сглаженного и генерализованного растра плотности. Более низкие значения приводят к построению растра, на котором показано большее количество деталей.

  • Радиус поиска по умолчанию вычисляется на основе пространственной конфигурации и числа входных точек. Этот подход корректирует пространственные выбросы — входные точки, которые находятся очень далеко от остальных, — поэтому они не сделают радиус поиска неоправданно большим.

  • Если коэффициент преобразования для единиц измерения площади мал относительно объектов (расстояния между точками или длины сегментов линии, в зависимости от типа объектов), выходные значения могут быть очень маленькими. Чтобы получить более высокие значения, выберите коэффициент преобразования для более крупных единиц измерения площади (например, квадратные километры, а не квадратные метры).

  • Параметр Выходные значения ячеек (out_cell_values в Python) определяет, что представляют значения в выходном растре. Если выбрано Плотности, то значения представляют собой значение плотности ядра на единицу площади для каждой ячейки. Если выбрано Ожидаемое количество, то значения представляют плотность ядер на площадь ячейки. Уравнение для вычисления количества по значениям плотности, таково: Количество = плотность × площадь.

  • Опция Плоский в параметре Метод (method в Python) подходит, если анализ должен быть выполнен в локальной области с проекцией, которая точно поддерживает правильные расстояния и площади. Опция Геодезический подходит, если анализ должен быть выполнен для больших областей (например, с использованием Web Mercator или любой географической системы координат). Этот метод учитывает кривизну сфероида и правильно обрабатывает данные вблизи полюсов и международной линии перемены дат.

  • При вычислении плотности учитываются только те точки или части линий, которые попадают в заданную область соседства. Если в область соседства конкретной ячейки не попадает ни одной точки или отрезка линии, такой ячейке будет присвоено значение NoData.

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

  • См. раздел Параметры среды анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.

  • Литература:

    Silverman, B. W. Density Estimation for Statistics and Data Analysis. New York: Chapman and Hall, 1986.

Параметры

ПодписьОписаниеТип данных
Входные точечные или линейные объекты

Входные объекты (точечные или линейные), для которых будет вычисляться плотность.

Feature Layer
Поле генеральной совокупности

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

Значения в поле генеральной совокупности могут быть целочисленными или с плавающей точкой.

Опции и поведение по умолчанию для поля перечислены ниже.

  • Используйте значение Нет, если не будет использовано какого-либо показателя или специального значения, и каждый объект будет подсчитан один раз.

  • Если входные объекты содержат значения z, можно использовать поле Shape.

  • В противном случае, полем по умолчанию будет POPULATION. Также могут применяться следующие условия:

    • Если отсутствует поле POPULATION, но присутствует поле POPULATIONabcd оно будет использовано по умолчанию. 'abcd' могут быть любыми допустимыми символами, например, POPULATION6, POPULATION1974 или POPULATIONROADTYPE.
    • Если нет поля POPULATION или поля POPULATIONabcd, но присутствует поле POP, по умолчанию будет использовано поле POP.
    • Если нет поля POPULATION, поля POPULATIONabcd или поля POP, но присутствует поле POPabcd, по умолчанию будет использовано поле POPabcd.
    • Если нет поля POPULATION, поля POPULATIONabcd, поля POP или поля POPabcd, по умолчанию будет использовано поле NONE.
Field
Размер выходной ячейки
(Дополнительный)

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

Этот параметр может быть задан числовым значениям или получен из имеющегося набора растровых данных. Если размер ячейки не был явно указан в качестве значения параметра, используется параметр среды Размер ячейки, если он задан, иначе будут применены дополнительные правила для его вычисления по другим входным данным. Более подробную информацию см. в разделе об использовании.

Analysis Cell Size
Радиус поиска
(Дополнительный)

Радиус поиска, в пределах которого будет вычислена плотность. Единицы измерения выбираются, основываясь на линейных единицах проекции пространственной привязки выходных данных.

Например, если единицы в метрах – чтобы включить все пространственные объекты в окрестность в 1 милю – установите радиус поиска в 1609,344 (1 миля = 1609,344 метра).

Радиус поиска по умолчанию вычисляется конкретно для входного набора данных с использованием пространственного варианта Правила большого пальца Сильвермэна (Silverman's Rule of Thumb; Silverman, 1986), который устойчив к пространственным выбросам (точкам, которые находятся далеко от остальных точек). Смотри рекомендации по использованию для ознакомления с описанием алгоритма.

Double
Единицы площади
(Дополнительный)

Указывает единицы площади, которые будут использоваться для выходных значений плотности.

По умолчанию единицы измерения определяются на основе линейных единиц выходной пространственной привязки. Можно изменить их на соответствующие единицы измерения, чтобы преобразовать выходные данные плотности. Значения для плотности линий преобразуют единицы измерения и длин, и площадей.

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

Если выходными единицами измерения являются иные, чем футы или метры, единицы, то выходными площадными единицами измерения плотности будут установлены Квадратные единицы карты. Таким образом единицы выходной плотности будут квадратом линейных единиц выходной пространственной привязки. Например, если выходными линейными единицами измерения являются сантиметры, то выходными площадными единицами измерения плотности будут Квадратные единицы карты, что приводит к результату в квадратных сантиметрах. Если выходными линейными единицами измерения являются километры, то выходными площадными единицами измерения плотности будут Квадратные единицы карты, что приводит к результату в квадратных километрах.

Доступными опциями и соответствующими им выходными единицами измерения плотности являются следующие:

  • Единицы площади картыБудет использоваться квадрат линейных единиц измерения для выходной пространственной привязки.
  • Квадратные милиБудут использоваться мили США.
  • Квадратные километрыБудут использоваться километры.
  • АкрыБудут использоваться Акры США.
  • ГектарыБудут использоваться гектары.
  • Квадратные ярдыБудут использоваться ярды США.
  • Квадратные футыБудут использоваться футы США.
  • Квадратные дюймыБудут использоваться дюймы США.
  • Квадратные метрыБудут использоваться метры.
  • Квадратные сантиметрыБудут использоваться сантиметры.
  • Квадратные миллиметрыБудут использоваться миллиметры.
String
Выходные значения ячеек
(Дополнительный)

Определяет, что представляют значения в выходном растре.

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

  • ПлотностьВыходные значения представляют собой рассчитанное значение плотности на единицу площади для каждой ячейки. Используется по умолчанию.
  • Ожидаемые подсчётыВыходные значения представляют собой рассчитанное значение плотности на площадь ячейки.
String
Метод
(Дополнительный)

Определяет, будет ли использоваться кратчайший путь на сфероиде (геодезический) или на плоской земной поверхности (плоский, planar).

Геодезический метод в качестве входных объектов поддерживает только точки.

  • ПлоскостнойПлоский — будут использоваться планарные расстояния между объектами. Используется по умолчанию.
  • ГеодезическийГеодезический — будут использоваться геодезические расстояния между объектами.
String
Входные объекты барьеров
(Дополнительный)

Набор данных, определяющий барьеры.

Барьеры могут быть линейными или полигональными объектами в векторном слое или классе объектов.

Feature Layer

Возвращаемое значение

ПодписьОписаниеТип данных
Выходной растр

Выходной растр плотности.

Это всегда растр с плавающей точкой.

Raster

KernelDensity(in_features, population_field, {cell_size}, {search_radius}, {area_unit_scale_factor}, {out_cell_values}, {method}, {in_barriers})
ИмяОписаниеТип данных
in_features

Входные объекты (точечные или линейные), для которых будет вычисляться плотность.

Feature Layer
population_field

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

Значения в поле генеральной совокупности могут быть целочисленными или с плавающей точкой.

Опции и поведение по умолчанию для поля перечислены ниже.

  • Используйте значение Нет, если не будет использовано какого-либо показателя или специального значения, и каждый объект будет подсчитан один раз.

  • Если входные объекты содержат значения z, можно использовать поле Shape.

  • В противном случае, полем по умолчанию будет POPULATION. Также могут применяться следующие условия:

    • Если отсутствует поле POPULATION, но присутствует поле POPULATIONabcd оно будет использовано по умолчанию. 'abcd' могут быть любыми допустимыми символами, например, POPULATION6, POPULATION1974 или POPULATIONROADTYPE.
    • Если нет поля POPULATION или поля POPULATIONabcd, но присутствует поле POP, по умолчанию будет использовано поле POP.
    • Если нет поля POPULATION, поля POPULATIONabcd или поля POP, но присутствует поле POPabcd, по умолчанию будет использовано поле POPabcd.
    • Если нет поля POPULATION, поля POPULATIONabcd, поля POP или поля POPabcd, по умолчанию будет использовано поле NONE.
Field
cell_size
(Дополнительный)

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

Этот параметр может быть задан числовым значениям или получен из имеющегося набора растровых данных. Если размер ячейки не был явно указан в качестве значения параметра, используется параметр среды Размер ячейки, если он задан, иначе будут применены дополнительные правила для его вычисления по другим входным данным. Более подробную информацию см. в разделе об использовании.

Analysis Cell Size
search_radius
(Дополнительный)

Радиус поиска, в пределах которого будет вычислена плотность. Единицы измерения выбираются, основываясь на линейных единицах проекции пространственной привязки выходных данных.

Например, если единицы в метрах – чтобы включить все пространственные объекты в окрестность в 1 милю – установите радиус поиска в 1609,344 (1 миля = 1609,344 метра).

Радиус поиска по умолчанию вычисляется конкретно для входного набора данных с использованием пространственного варианта Правила большого пальца Сильвермэна (Silverman's Rule of Thumb; Silverman, 1986), который устойчив к пространственным выбросам (точкам, которые находятся далеко от остальных точек). Смотри рекомендации по использованию для ознакомления с описанием алгоритма.

Double
area_unit_scale_factor
(Дополнительный)

Указывает единицы площади, которые будут использоваться для выходных значений плотности.

По умолчанию единицы измерения определяются на основе линейных единиц выходной пространственной привязки. Можно изменить их на соответствующие единицы измерения, чтобы преобразовать выходные данные плотности. Значения для плотности линий преобразуют единицы измерения и длин, и площадей.

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

Если выходными единицами измерения являются иные, чем футы или метры, единицы, то выходными площадными единицами измерения плотности будут установлены Квадратные единицы карты. Таким образом единицы выходной плотности будут квадратом линейных единиц выходной пространственной привязки. Например, если выходными линейными единицами измерения являются сантиметры, то выходными площадными единицами измерения плотности будут Квадратные единицы карты, что приводит к результату в квадратных сантиметрах. Если выходными линейными единицами измерения являются километры, то выходными площадными единицами измерения плотности будут Квадратные единицы карты, что приводит к результату в квадратных километрах.

Доступными опциями и соответствующими им выходными единицами измерения плотности являются следующие:

  • SQUARE_MAP_UNITSБудет использоваться квадрат линейных единиц измерения для выходной пространственной привязки.
  • SQUARE_MILESБудут использоваться мили США.
  • SQUARE_KILOMETERSБудут использоваться километры.
  • ACRESБудут использоваться Акры США.
  • HECTARESБудут использоваться гектары.
  • SQUARE_YARDSБудут использоваться ярды США.
  • SQUARE_FEETБудут использоваться футы США.
  • SQUARE_INCHESБудут использоваться дюймы США.
  • SQUARE_METERSБудут использоваться метры.
  • SQUARE_CENTIMETERSБудут использоваться сантиметры.
  • SQUARE_MILLIMETERSБудут использоваться миллиметры.
String
out_cell_values
(Дополнительный)

Определяет, что представляют значения в выходном растре.

  • DENSITIESВыходные значения представляют собой рассчитанное значение плотности на единицу площади для каждой ячейки. Используется по умолчанию.
  • EXPECTED_COUNTSВыходные значения представляют собой рассчитанное значение плотности на площадь ячейки.

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

String
method
(Дополнительный)

Определяет, будет ли использоваться кратчайший путь на сфероиде (геодезический) или на плоской земной поверхности (плоский, planar).

  • PLANARПлоский — будут использоваться планарные расстояния между объектами. Используется по умолчанию.
  • GEODESICГеодезический — будут использоваться геодезические расстояния между объектами.

Геодезический метод в качестве входных объектов поддерживает только точки.

String
in_barriers
(Дополнительный)

Набор данных, определяющий барьеры.

Барьеры могут быть линейными или полигональными объектами в векторном слое или классе объектов.

Feature Layer

Возвращаемое значение

ИмяОписаниеТип данных
out_raster

Выходной растр плотности.

Это всегда растр с плавающей точкой.

Raster

Пример кода

KernelDensity, пример 1 (окно Python)

В этом примере вычисляется сглаженный растр плотности из точечного шейп-файла.

from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outKDens = KernelDensity("rec_sites.shp", "", 45, 1200, "SQUARE_KILOMETERS",
                         "", "GEODESIC")
outKDens.save("C:/sapyexamples/output/KD_out.tif")
KernelDensity, пример 2 (автономный скрипт)

В этом примере вычисляется сглаженный растр плотности из точечного шейп-файла.

# Name: KernelDensity_Ex_02.py
# Description: Calculates the ozone concentration pattern divided by
#              Sierra Nevada Mountain in California
#              based on the point samples using a kernel function to
#              fit a smoothly tapered surface.
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inFeatures = "ozone_california.shp"
populationField = "OZONE"
cellSize = 60
searchRadius = 2500
inBarriers = "SierraNevada.shp"

# Execute KernelDensity
outKernelDensity = KernelDensity(inFeatures, populationField, cellSize, searchRadius,
                                 "SQUARE_KILOMETERS", "DENSITIES", "PLANAR", inBarriers)

# Save the output 
outKernelDensity.save("C:/sapyexamples/output/KD_ozone_california.tif")