Соседние полигоны (Анализ)

Сводка

Создает таблицу статистики на основании примыкания полигонов (перекрытия, совпадающие ребра или узлы).

Дополнительные сведения о работе инструмента Соседние полигоны

Иллюстрация

Схема, показывающая исходный полигон и соседние полигоны

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

  • Инструмент анализирует примыкание полигона, суммируя

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

  • Инструмент анализирует и записывает примыкание только первого порядка. Другие отношения не исследуются, т. е. соседи соседей (примыкание второго порядка) не проверяются.

  • Параметр Поля для отчета (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
(Дополнительный)

Определяет, должны ли перекрывающиеся полигоны анализироваться и включаться в выходные данные.

  • NO_AREA_OVERLAPПерекрытия не будут анализироваться и включаться в выходные данные. Это значение по умолчанию.
  • AREA_OVERLAPПерекрытия будут анализироваться и включаться в выходные данные.
Boolean
both_sides
(Дополнительный)

Определяет, должны ли включаться в выходные данные обе стороны соседских отношений.

  • BOTH_SIDES При наличии пары соседних полигонов, информация о соседских отношениях будет сообщаться для полигона, являющегося исходным, и полигона, являющегося соседним, и наоборот. Это значение по умолчанию.
  • NO_BOTH_SIDES При наличии пары соседних полигонов, информация о соседских отношениях будет сообщаться для полигона, являющегося исходным, и полигона, являющегося соседним. Взаимообратные отношения включаться не будут.
Boolean
cluster_tolerance
(Дополнительный)

Минимальное расстояние между координатами, прежде чем они будут считаться равными. По умолчанию это расстояние равно значению Допуск XY входных объектов.

Внимание:

Изменение значения этого параметра может привести к сбою или неожиданным результатам. Рекомендуется не изменять этот параметр. Он был удален из поля зрения в диалоговом окне инструмента. По умолчанию используется свойство пространственной привязки допуск x,y входного класса пространственных объектов.

Linear Unit
out_linear_units
(Дополнительный)

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

  • UNKNOWNНеизвестные
  • INCHESДюймы
  • FEETФуты
  • YARDSЯрды
  • MILESМили
  • NAUTICAL_MILESМорские мили
  • MILLIMETERSМиллиметры
  • CENTIMETERSСантиметры
  • DECIMETERSДециметры
  • METERSМетры
  • KILOMETERSКилометры
  • DECIMAL_DEGREESДесятичные градусы
  • POINTSТочки
String
out_area_units
(Дополнительный)

Единицы измерения, используемые для указания площади перекрытия соседних полигонов. По умолчанию используются единицы входного объекта. Параметр доступен только при соблюдении условия area_overlap="AREA_OVERLAP".

  • UNKNOWNНеизвестные
  • ARESАкры
  • ACRESАкры
  • HECTARESГектары
  • SQUARE_INCHESКвадратные дюймы
  • SQUARE_FEETКвадратные футы
  • SQUARE_YARDSКвадратные ярды
  • SQUARE_MILESКвадратные мили
  • SQUARE_MILLIMETERSКвадратные миллиметры
  • SQUARE_CENTIMETERSКвадратные сантиметры
  • SQUARE_DECIMETERSКвадратные дециметры
  • SQUARE_METERSКвадратные метры
  • SQUARE_KILOMETERSКвадратные километры
String

Пример кода

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

Ищет каждый соседний избирательный округ в провинции Новая Шотландия.

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())

Информация о лицензиях

  • Basic: Да
  • Standard: Да
  • Advanced: Да

Связанные разделы