Сводка
Создает таблицу статистики на основании примыкания полигонов (перекрытия, совпадающие ребра или узлы).
Дополнительные сведения о работе инструмента Соседние полигоны
Иллюстрация
Использование
Инструмент анализирует примыкание полигона, суммируя
- Площадь перекрытий (перекрывающиеся соседи – дополнительно)
- Длину совпадающих ребер (соприкасающиеся соседи).
- Сколько раз границы пересекаются или касаются в точке (соседи по узлу)
Инструмент анализирует и записывает примыкание только первого порядка. Другие отношения не исследуются, т. е. соседи соседей (примыкание второго порядка) не проверяются.
Параметр Поля для отчета (in_fields в Python) используется для идентификации уникальных полигонов или групп полигонов и составлении отчета об их связях с соседними полигонами. Чтобы найти соседей каждого отдельного полигона во входных данных, укажите одно или несколько входных полей, имеющих уникальное значение или набор значений (в случае использования нескольких полей) для каждого полигона.
Когда заданные поля идентифицируют уникальные группы полигонов, информация о соседских отношениях суммируется и представляется по группам.
Дополнительные сведения об использовании этого параметра см. в разделе Как работает инструмент Соседние полигоны.
Опцию Включить перекрывающиеся области можно использовать для анализа перекрывающихся областей. Когда выбрана опция Включить перекрытия областей , в выходной таблице содержится поле AREA, в которое записывается площадь перекрытия для проанализированного перекрывающего соседа. Если наложение не обнаружено, значение AREA равно 0.
Подсказка:
Расчет площади перекрытия требует большого объема системных ресурсов, и скорость работы инструмента может быть ниже, чем при определении отношений соприкасающихся соседей и соседей по узлу. Если данные не содержат перекрывающихся объектов или наличие перекрывающихся соседей неважно, убедитесь, что отметка Включить перекрытия областей снята в диалоговом окне инструмента (area_overlap="NO_AREA_OVERLAP" в Python).
Внимание:
Опция Включить перекрытия областей должна быть отмечена в диалоговом окне (area_overlap="AREA_OVERLAP" в Python) – для получения записей о соседях, полностью содержащихся в исходном полигоне. Если не отметить опцию Включить перекрывающиеся области, выходная таблица не будет иметь записей о соседях, полностью содержащихся в исходном полигоне.
В выходной таблице нет записей об объектах, не являющихся соседними.
Опция Включить обе стороны отношения-соседства в диалоговом окне инструмента используется для управления отношениями, включенными в выходные данные. Чтобы получить данные обо всех отношениях примыкания, включая взаимно обратные отношения, нужно поставить отметку Включить обе стороны отношения-соседства (both_sides="BOTH_SIDES" в Python). Например, если OID1 – сосед OID2, в выходную таблицу добавляется запись о том, что у объекта OID1 есть сосед OID2, и запись о том, что у объекта OID2 есть сосед OID1. Если нужно указать связь только для первой стороны, снимите отметку с опции Включить обе стороны отношения-соседства. Если снять отметку с опции Включить обе стороны отношения-соседства, то в вышеприведенном примере в выходную таблицу добавляется только запись о том, что у объекта OID1 есть сосед OID2.
Параметр Выходные линейные единицы определяет единицы измерения, в которых задается длина общей границы между соседями. По умолчанию используются единицы измерения, определенные в системе координат входного объекта.
Опция Выходные единицы площади используется, только если включен параметр Наложение областей (area_overlap="AREA_OVERLAP" в Python). Когда активирован параметр Перекрытие областей, для вычисления площади перекрытия соседей используются единицы, указанные в параметре Выходные единицы площади. По умолчанию используются единицы измерения, заданные в системе координат входного объекта.
Выходной таблицей может быть таблица файловой базы геоданных или таблица .dbf.
Выходная таблица содержит следующие поля:
- src_field – приставка src означает источник, а field – поле, используемое параметром Отчет по полям. Будет получено столько полей, сколько указано в параметре Отчет по полям.
- nbr_field – приставка nbr означает соседа, а field – поле, используемое параметром Отчет по полям. Как и в случае с полями src_field, будет получено столько полей, сколько указано вами в параметре Отчет по полям.
- AREA – это поле содержит общую площадь перекрытия между исходным и соседним полигонами (перекрывающиеся соседи). Это поле включается в выходную таблицу, только когда активирован параметр Включить перекрывающиеся области (area_overlap="AREA_OVERLAP" в Python ).
- LENGTH – это поле содержит общую длину совпадающих ребер исходного и соседнего полигонов.
- NODE_COUNT – это поле записывается, сколько раз исходный и соседний полигоны пересекаются или касаются друг друга в точке.
Если из входных объектов сделана выборка, будут анализироваться только выбранные объекты.
Синтаксис
arcpy.analysis.PolygonNeighbors(in_features, out_table, {in_fields}, {area_overlap}, {both_sides}, {cluster_tolerance}, {out_linear_units}, {out_area_units})
Parameter | Объяснение | Тип данных |
in_features | Входные полигональные объекты. | Feature Layer |
out_table | Выходная таблица. | Table |
in_fields [field,...] (Дополнительный) | Входное поле или поля атрибутов, используемые для идентификации уникальных полигонов или групп полигонов и представления их в выходных данных. | Field |
area_overlap (Дополнительный) | Определяет, должны ли перекрывающиеся полигоны анализироваться и включаться в выходные данные.
| Boolean |
both_sides (Дополнительный) | Определяет, должны ли включаться в выходные данные обе стороны соседских отношений.
| Boolean |
cluster_tolerance (Дополнительный) | Минимальное расстояние между координатами, прежде чем они будут считаться равными. По умолчанию это расстояние равно значению Допуск XY входных объектов. Внимание:Изменение значения этого параметра может привести к сбою или неожиданным результатам. Рекомендуется не изменять этот параметр. Он был удален из поля зрения в диалоговом окне инструмента. По умолчанию используется свойство пространственной привязки допуск x,y входного класса пространственных объектов. | Linear Unit |
out_linear_units (Дополнительный) | Единицы измерения, использующиеся для указания общей длины совпадающего ребра соседних полигонов. По умолчанию используются единицы входного объекта.
| String |
out_area_units (Дополнительный) | Единицы измерения, используемые для указания площади перекрытия соседних полигонов. По умолчанию используются единицы входного объекта. Параметр доступен только при соблюдении условия area_overlap="AREA_OVERLAP".
| String |
Пример кода
Ищет каждый соседний избирательный округ в провинции Новая Шотландия.
import arcpy
arcpy.MakeFeatureLayer_management(r"C:\Data\Canada\CanadaElecDist.shp",
"Canada_ElectoralDist")
arcpy.SelectLayerByAttribute_management("Canada_ElectoralDist", "NEW_SELECTION",
"\"PROVCODE\" = 'NS'")
count = arcpy.GetCount_management("Canada_ElectoralDist")[0]
print("Selected feature count: {}".format(count))
arcpy.PolygonNeighbors_analysis("Canada_ElectoralDist",
r"C:\Data\Output\NS_elec_neigh.dbf", "ENNAME")
print(arcpy.GetMessages())
Environments
Информация о лицензиях
- Basic: Да
- Standard: Да
- Advanced: Да