Таблица площадей (Tabulate Area) (Spatial Analyst)

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

Резюме

Вычисляет перекрестную таблицу площадей между двумя наборами данных и выдает таблицу.

Рисунок

Иллюстрация Таблицы площадей (Tabulate Area)
TabulateArea(ZoneRas, "ЗНАЧЕНИЕ", ClassRas, "ЗНАЧЕНИЕ", Tabarea1.dbf, 1)

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

Синтаксис

TabulateArea (in_zone_data, zone_field, in_class_data, class_field, out_table, {processing_cell_size})
ПараметрОбъяснениеТип данных
in_zone_data

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

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

Raster Layer | Feature Layer
zone_field

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

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

Field
in_class_data

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

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

Raster Layer | Feature Layer
class_field

Поле, содержащее значения классов.

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

Field
out_table

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

Table
processing_cell_size
(дополнительно)

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

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

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

Analysis Cell Size

Пример кода

Таблица площадей — пример 1 (окно Python)

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

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
TabulateArea("zonedata.shp", "IDStr", "valueraster", "VALUE",
             "C:/sapyexamples/output/areatable.dbf", 2)
Табулирование. Пример 2 (автономный скрипт)

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

# Name: TabulateArea_Ex_02.py
# Description: Calculates cross tabulated areas between two datasets.
# 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"
env.extent = "classgrid"
env.snapRaster = "classgrid"

# Set local variables
inZoneData = "zonedata.shp"
zoneField = "IDStr"
inClassData = "valueraster"
classField = "VALUE"
outTable = "C:/sapyexamples/output/areatable02.dbf"
processingCellSize = 2

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

# Execute TabulateArea
TabulateArea(inZoneData, zoneField, inClassData, classField, outTable,
             processingCellSize)

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

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

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

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