Краткая информация
Определяет максимально близко расположенный к вычисленному центру пространственный объект для точечных, линейных или полигональных классов пространственных объектов.
Иллюстрация
Использование
Объект, имеющий наименьшее накопленное расстояние до всех остальных объектов набора данных, считается центральным объектом. Этот объект выбирается и копируется в новый Выходной класс пространственных объектов. Возможна ситуация, когда имеется несколько объектов, имеющих наименьшее накопленное расстояние до всех других объектов. Когда такое происходит, все эти наиболее центрально расположенные объекты копируются в Выходной класс объектов.
Накопленное расстояние измеряется с методом EUCLIDEAN_DISTANCE или MANHATTAN_DISTANCE в соответствии с установкой параметра Метод определения расстояний.
-
Для линейных или полигональных объектов, при расчете расстояний используются центроиды. Для мультиточек, полилиний или полигонов, состоящих их нескольких частей, центроид вычисляется с использованием средневзвешенного центра всех частей объекта. При определении весов точечные объекты имеют равный вес (1). Для линейных объектов это длина сегмента. Для полигональных – площадь.
-
Слои карты можно использовать для определения Входного класса объектов. Если в слое есть выборка, только выбранные объекты будут включены в анализ.
Поле группировки используется для группировки объектов для отдельного вычисления Центрального объекта. Поле группировки может быть типа integer, date или string. Записи, имеющие значения NULL в Поле группировки будут исключены из анализа.
Собственный потенциал – это расстояние или вес между объектом и этим же объектом. Часто вес имеет значение "0", но в некоторых случаях вам может понадобиться задать другую фиксированную величину или другую величину для каждого пространственного объекта (возможно, основанную на размере полигона).
Синтаксис
CentralFeature_stats (Input_Feature_Class, Output_Feature_Class, Distance_Method, {Weight_Field}, {Self_Potential_Weight_Field}, {Case_Field})
Параметр | Объяснение | Тип данных |
Input_Feature_Class | Класс пространственных объектов, содержащий распределение объектов, из которых нужно определить наиболее центрально расположенный объект. | Feature Layer |
Output_Feature_Class | Класс объектов, который будет содержать наиболее центрально расположенный объект во Входном классе объектов. | Feature Class |
Distance_Method | Определяет, как рассчитываются расстояния от одного объекта до соседнего объекта.
| String |
Weight_Field (Дополнительный) | Числовое поле, используемое для взвешивания расстояний в матрице расстояний типа начало-пункт назначения. | Field |
Self_Potential_Weight_Field (Дополнительный) | Поле, представляющее собственный потенциал, – это расстояние или вес между одним и тем же объектом. | Field |
Case_Field (Дополнительный) | Поле, используемое для группировки объектов для отдельных расчетов центрального объекта. Поле группировки должно быть типа целое (integer), дата (date) или текст (string). | Field |
Пример кода
CentralFeature, пример 1 (окно Python)
В следующем скрипте показан пример кода для использования функции CentralFeature, с запуском из окна Python.
import arcpy
arcpy.env.workspace = r"C:\data"
arcpy.CentralFeature_stats("coffee_shops.shp", "coffee_CENTRALFEATURE.shp", "EUCLIDEAN_DISTANCE", "NUM_EMP", "#", "#")
CentralFeature, пример 2 (автономный скрипт Python)
Пример использования функции CentralFeature в автономном скрипте Python.
# Measure geographic distribution characteristics of coffee house locations weighted by the number of employees
# Import system modules
import arcpy
# Local variables...
workspace = "C:/data"
input_FC = "coffee_shops.shp"
CF_output = "coffee_CENTRALFEATURE.shp"
MEAN_output = "coffee_MEANCENTER.shp"
MED_output = "coffee_MEDIANCENTER.shp"
weight_field = "NUM_EMP"
try:
# Set the workspace to avoid having to type out full path names
arcpy.env.workspace = workspace
# Process: Central Feature...
arcpy.CentralFeature_stats(input_FC, CF_output, "EUCLIDEAN_DISTANCE", weight_field, "#", "#")
# Process: Mean Center...
arcpy.MeanCenter_stats(input_FC, MEAN_output, weight_field, "#", "#")
# Process: Median Center...
arcpy.MedianCenter_stats(input_FC, MED_output, weight_field, "#", "#")
except:
# If an error occurred when running the tool, print out the error message.
print(arcpy.GetMessages())
Параметры среды
Информация о лицензиях
- ArcGIS Desktop Basic: Да
- ArcGIS Desktop Standard: Да
- ArcGIS Desktop Advanced: Да