Доступно с лицензией Spatial Analyst.
Краткая информация
Вычисляет для каждой зоны в наборе данных измерения геометрии (площадь, периметр, толщину и характеристики эллипса) и выдает результаты в виде таблицы.
Более подробно о том, как работает инструмент Зональная геометрия
Иллюстрация
VALUE AREA PERIMETER THICKNESS XCENTROID YCENTROID MAJORAXIS MINORAXIS ORIENTATION 0 5.0 14.0 0.5 2.300 2.100 2.338 0.681 60.714 1 5.0 14.0 0.5 1.900 2.100 2.668 0.596 126.061 2 3.0 8.0 0.5 3.167 2.167 1.286 0.743 135.000 4 2.0 6.0 0.5 0.500 1.000 1.128 0.564 90.000
Использование
Зона определяется как все области входных данных, имеющие одно значение. Области не обязательно должны быть непрерывными. Наборы растровых данных и наборы классов объектов могут использоваться для входных данных зоны.
Если в качестве входных данных зон используется набор классов объектов, в диалоговом окне Размер обрабатываемой ячейки или параметре среды Размер ячейки следует задать размер ячейки.
Вычисления для каждой зоны записываются в выходной таблице.
При указании данных входной зоны полем зоны по умолчанию будет первое доступное и допустимое поле. Если других допустимых полей нет, по умолчанию используется поле ObjectID (например, OID или FID).
Если для Поля зоны выбрано зарезервированное поле (например, OBJECTID, FID или OID), это может привести к неоднозначному результату. Результат содержит имя определенного зарезервированного поля, необходимое для конкретного типа выходного формата, а также заданное Поле зоны . Если имя указанного поля такое же, как у зарезервированного поля для конкретного выходного формата, имя поля зоны в выходных данных будет изменено таким образом, чтобы все имена полей в результате были уникальными.
В выходной таблице поле значения всегда предшествует полям, содержащим зональные выходные вычисления. Поле значения содержит значения зон, определяемых набором данных зон.
Значения результатов зональных вычислений будут представлены числами с плавающей точкой.
Все результаты в выходной таблице отображаются в единицах карты, кроме элемента ORIENTATION, который указан в градусах в диапазоне от 0 до 180. Ориентация определяется как угол между осью x и большой осью эллипса. Значения угла ориентации увеличиваются в направлении против часовой стрелки, начиная от 0 на востоке (горизонтальное положение, направление вправо), и переходят через значение 90 градусов, когда большая ось вертикальна.
Если какая-либо зона состоит только из одной ячейки, или если зона представляет единый квадратный блок ячеек, ориентация эллипса (который в этом случае будет окружностью) устанавливается равной 90 градусам.
См. раздел Параметры среды анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.
Синтаксис
ZonalGeometryAsTable (in_zone_data, zone_field, out_table, {processing_cell_size})
Параметр | Объяснение | Тип данных |
in_zone_data | Набор данных, который определяет зоны. Зоны могут быть определены слоем целочисленного растра или векторным слоем. | Raster Layer; Feature Layer |
zone_field | Поле, в котором содержатся значения, определяющие каждую зону. Это может быть целочисленное поле набора данных зон. | Field |
out_table | Выходная таблица, которая содержит итоговую информацию по значениям в каждой зоне. Формат таблицы определяется выходным местоположением и путем к ней. По умолчанию выходными данными будет таблица базы геоданных. Если путь указывает не на базу геоданных, формат будет определяется расширением. Если выбрано расширение .dbf, данные будут в формате dBASE. Если расширение не указано, это будет таблица INFO. | Table |
processing_cell_size (Дополнительный) | Размер обрабатываемой ячейки для выполнения зональной операции. Значение, устанавливаемое в параметрах среды. Если не заданы параметры среды, значение по умолчанию для размера ячейки определяется по типу данных зоны, как показано ниже:
| Analysis Cell Size |
Пример кода
ZonalGeometryAsTable, пример 1 (окно Python)
В этом примере определяются измерения геометрии для каждой зоны, определенной по входному полигональному шейп-файлу.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outZonalGeometryAsTable = ZonalGeometryAsTable("zones.shp", "Classes", "zonalgeomout", 0.2)
ZonalGeometryAsTable, пример 2 (автономный скрипт)
В этом примере определяются измерения геометрии для каждой зоны, определенной по входному полигональному шейп-файлу.
# Name: ZonalGeometryAsTable_Ex_02.py
# Description:Calculates for each zone in a dataset the specified geometry
# measure (area, perimeter, thickness, or the characteristics
# of ellipse) and reports the results as a table.
# 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"
outTable = "zonalgeomout02.dbf"
processingCellSize = 0.2
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute ZonalGeometryAsTable
outZonalGeometryAsTable = ZonalGeometryAsTable(inZoneData, zoneField, "AREA", cellSize)
Параметры среды
Информация о лицензиях
- ArcGIS Desktop Basic: Требует Spatial Analyst
- ArcGIS Desktop Standard: Требует Spatial Analyst
- ArcGIS Desktop Advanced: Требует Spatial Analyst