Сводка
Суммирует атрибуты входного полигонального слоя на основе пространственного наложения целевого полигонального слоя и назначает итоговые атрибуты целевым полигонам. Целевые полигоны имеют суммированные числовые атрибуты, полученные из входных полигонов, которые перекрываются каждым целевым полигоном. Этот процесс обычно называется распределительным или распределением.
Этот инструмент можно использовать для оценки популяции одного объекта на основе процента этого объекта, который перекрывает другой объект с известной популяцией.
Иллюстрация
Использование
По умолчанию процент перекрывающейся области определяет значение атрибута. Поле веса может использоваться вместе с областью для определения части атрибута, которая должна быть суммирована для каждого перекрывающегося объекта.
Значение поля веса, равное 0, установит для полей пропорциональные значения 0 для любых перекрывающихся целевых объектов.
Инструмент учитывает параметр среды Коэффициент параллельной обработки. Если параметр среды не задан (по умолчанию), или задано значение, равное 100, будет включена полная параллельная обработка, и инструмент будет пытаться задействовать все логические ядра процессора компьютера. Установка параметры среды равным 0 отключит параллельную обработку. Присвоение коэффициенту значения от 1 до 99 приведет к тому, что инструмент определит процент логических ядер для использования по формуле (Коэффициент параллельной обработки / 100 * Логические ядра), округлив результат до ближайшего целого значения. Если результат равен 0 или 1, параллельная обработка не будет включена.
Синтаксис
arcpy.analysis.ApportionPolygon(in_features, apportion_fields, target_features, out_features, method, {estimation_features}, {weight_field}, {maintain_geometries})
Parameter | Объяснение | Тип данных |
in_features | Полигональные объекты, имеющие числовые атрибуты, суммируются в геометрии целевого полигона. | Feature Layer |
apportion_fields [apportion_fields,...] | Числовые поля входных полигонов, которые будут суммированы по каждому целевому полигону и записаны в выходной класс пространственных объектов. | Field |
target_features | Полигональные объекты, которые будут скопированы в выходной класс пространственных объектов и будут включать все разделенные поля. | Feature Layer |
out_features | Выходной класс пространственных объектов, содержащий атрибут и геометрию целевых полигонов, а также указанные поля разделения из входных полигонов. | Feature Class |
method | Задает метод, используемый для разделения полей входных полигонов в целевые полигоны.
| String |
estimation_features (Дополнительный) | Этот параметр отключен в ArcGIS Pro 2.7 и будет поддерживаться в следующем выпуске. | Feature Layer |
weight_field (Дополнительный) | Числовое поле из слоя целевых полигонов, которое используется для настройки того, какие целевые полигоны получают более крупные разделенные значения из полей входных полигонов для разделения. Цели с более высоким весом распределяются с более высоким соотношением значений поля. | Field |
maintain_geometries (Дополнительный) | Определяет, будет ли выходной класс пространственных объектов сохранять исходную геометрию целевого полигонального слоя.
| Boolean |
Пример кода
Скрипт окна Python, демонстрирующий использование инструмента ApportionPolygon.
import arcpy
arcpy.env.workspace = "C:/data/MyAnalysis.gdb"
arcpy.ApportionPolygon_analysis(
"CensusBlockGroups", "Pop2020", "StoreServiceArea",
"StoreServiceArea_w_Population", "AREA", "", "", "MAINTAIN_GEOMETRIES")
Следующий автономный скрипт переносит взвешенное по площади население из слоя групп блоков переписи в полигон области обслуживания магазина.
# Name: Store Service Area Get Population.py
# Description: Use apportionment to transfer population figures to different geometry
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/data/MyAnalysis.gdb"
# Perform apportionment
inputDataWithPop = "CensusBlockGroups"
popField = "Pop2020"
targetServiceAreas = "Store_ServiceAreas"
outputApp = "Store_ServiceAreas_w_Population"
apportionMethod = "AREA"
keepTargetGeom = "MAINTAIN_GEOMETRIES"
arcpy.ApportionPolygon_analysis(inputDataWithPop, popField, targetServiceAreas,
outputApp, apportionMethod, "", "",
keepTargetGeom)
# Summarize store service area populations by store admin region
outStats = "PopulationPerSalesRegion_tlb"
statsFields = [["Pop2020", "SUM"]]
regionField = "SalesRegion" # Values like North, North-East, etc.
arcpy.Statistics_analysis(outputApp, outStats, statsFields, regionField)
Environments
Информация о лицензиях
- Basic: Да
- Standard: Да
- Advanced: Да