Зональная геометрия (Zonal Geometry) (Spatial Analyst)

Уровень лицензии:BasicStandardAdvanced

Резюме

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

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

Рисунок

Иллюстрация инструмента Зональная геометрия (Zonal Geometry)
OutRas = ZonalGeometry(InRas1,"VALUE","AREA")

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

Синтаксис

ZonalGeometry (in_zone_data, zone_field, {geometry_type}, {cell_size})
ПараметрОбъяснениеТип данных
in_zone_data

Набор данных, который определяет зоны.

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

Raster Layer | Feature Layer
zone_field

Поле, в котором содержатся значения, определяющие каждую зону.

Это может быть целочисленное поле набора данных зон.

Field
geometry_type
(дополнительно)

Вычисляемый тип геометрии.

  • ПЛОЩАДЬ (AREA) Площадь каждой зоны.
  • PERIMETER Периметр каждой зоны.
  • ТОЛЩИНА Самая глубокая (или толстая) точка в пределах зоны из окружающих ее ячеек.
  • ЦЕНТРОИД Определяет местоположение центроида каждой зоны.
String
cell_size
(дополнительно)

Размер обрабатываемой ячейки для выполнения зональной операции.

Значение, устанавливаемое в параметрах среды. Если не заданы параметры среды, значение по умолчанию для размера ячейки определяется по типу данных зоны, как показано ниже:

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

Analysis Cell Size

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

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

Выходной растр зональной геометрии.

Raster

Пример кода

Зональная геометрия. Пример 1 (окно Python)

В этом примере определяется площадь для каждой зоны, определенная входным полигональным шейп-файлом.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outZonalGeometry = ZonalGeometry("zones.shp", "Classes", "AREA", 0.2)
outZonalGeometry.save("C:/sapyexamples/output/zonegeomout3")
Зональная геометрия. Пример 2 (автономный скрипт)

В этом примере определяется площадь для каждой зоны, определенная входным полигональным шейп-файлом.

# Name: ZonalGeometry_Ex_02.py
# Description:Calculates for each zone in a dataset the specified geometry 
#   measure (area, perimeter, thickness, or the characteristics 
#   of ellipse).
# 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
inZoneData = "zones.shp"
zoneField = "Classes"
cellSize = 0.2

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Execute ZonalStatistics
outZonalGeometry = ZonalGeometry(inZoneData, zoneField, "AREA", cellSize)  

# Save the output 
outZonalGeometry.save("C:/sapyexamples/output/zonegeomout2")

Параметры среды

Связанные темы

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

ArcGIS for Desktop Basic: Требует Spatial Analyst
ArcGIS for Desktop Standard: Требует Spatial Analyst
ArcGIS for Desktop Advanced: Требует Spatial Analyst
9/11/2013