Disponible con una licencia de Spatial Analyst.
Resumen
Calcula áreas tabuladas entre dos datasets y genera como salida una tabla.
Ilustración
Uso
Una zona se define como todas las áreas de la entrada que tienen el mismo valor. No es necesario que las áreas sean contiguas. Puede usar tanto rásteres como entidades para la entrada de zona.
Si los Datos de zonas de entidad o ráster de entrada (in_zone_data en Python) o los Datos de clase de entidad o ráster de entrada (in_class_data en Python) son enteros, deben ser rásteres enteros.
Si ambas entradas son rásteres y sus tamaños de celda difieren, el tamaño de celda de salida será el Máximo de entradas. Los Datos de clase de entidad o ráster de entrada (in_class_data en Python) se utilizarán internamente como el Ráster de alineación. Si el tamaño de celda es el mismo, pero las celdas no están alineadas, los datos de clase se utilizarán internamente como el ráster de alineación. En ambos casos, se desencadenará un remuestreo interno antes de realizar la operación zonal.
Cuando las entradas de zona y de clase son rásteres del mismo tamaño de celda y las celdas están alineadas, se utilizarán directamente en la herramienta. No se remuestrearán internamente durante la ejecución de la herramienta.
Si los Datos de zonas de entidad o ráster de entrada (in_zone_data en Python) son una entidad y los Datos de clase de entidad o ráster de entrada (in_class_data en Python) son un ráster, los datos de zona se convertirán internamente en un ráster utilizando el tamaño de celda y la alineación de celda de los datos de clase.
Si los Datos de clase de entidad o ráster de entrada (in_class_data en Python) son una entidad y los Datos de zonas de entidad o ráster de entrada (in_zone_data en Python) son un ráster, los datos de clase se convertirán internamente en un ráster utilizando el tamaño de celda y la alineación de celda de los datos de zona.
Si ambas entradas son entidades, la Extensión será el Mínimo de entradas, el tamaño de celda será el valor más bajo del ancho o la altura de la extensión del dataset de entidades zonal en la referencia espacial de salida, dividido entre 250.
Si los Datos de zonas de entidad o ráster de entrada (in_zone_data en Python) tienen polígonos que se superponen, el análisis zonal no se realizará para cada polígono individual. Debido a que la entrada de entidades se convierte a ráster, cada ubicación puede tener sólo un valor.
Un método alternativo es procesar la operación zonal con iteración para cada una de las zonas poligonales e intercalar los resultados.
Al especificar los datos de clase o zona de entrada, el campo predeterminado será el primer campo entero o de texto disponible. Si no existen otros campos válidos, el campo ObjectID (por ejemplo, OID o FID) será el valor predeterminado.
Si se utiliza un punto o una línea como los Datos de clase de entidad o ráster de entrada (in_class_data en Python), se comunicará el área intersecada por esas entidades.
La salida de la herramienta Área tabulada es una tabla.
En esta tabla:
- Habrá un registro para cada valor único del dataset de zona.
- Habrá un campo para cada valor único del dataset de clase.
- Cada registro almacenará el área de cada clase dentro de cada zona.
Consulte Trabajar con área tabulada para obtener explicaciones de determinadas cuestiones que pueden surgir con esta herramienta y sugerencias sobre cómo resolverlas.
Consulte Entornos de análisis y Spatial Analyst para obtener detalles adicionales sobre los entornos de geoprocesamiento válidos para esta herramienta.
Sintaxis
TabulateArea (in_zone_data, zone_field, in_class_data, class_field, out_table, {processing_cell_size})
Parámetro | Explicación | Tipo de datos |
in_zone_data | El dataset que define las zonas. Las zonas pueden definirse mediante un ráster entero o una capa de entidades. | Raster Layer; Feature Layer |
zone_field | El campo que mantiene los valores que definen cada zona. Puede ser un campo de enteros o de cadenas de caracteres del dataset zonal. | Field |
in_class_data | El dataset que define las clases que tendrán su área resumida dentro de cada zona. La entrada de clase puede ser una capa de ráster entero o una capa de entidad. | Raster Layer; Feature Layer |
class_field | El campo que contiene los valores de clase. Puede ser un campo de enteros o de cadenas de caracteres de los datos de la clase de entrada. | Field |
out_table | Tabla de salida que contendrá el resumen del área de cada clase en cada zona. El formato de la tabla está determinado por la ubicación y la ruta de salida. De forma predeterminada, la salida será una tabla de geodatabase. Si la ruta no está en una geodatabase, el formato lo determinará la extensión. Si la extensión es .dbf, tendrá el formato de dBASE. Si no se especifica una extensión, la salida será una tabla INFO. | Table |
processing_cell_size (Opcional) | Tamaño de celda de procesamiento de la operación zonal. Este es el valor del entorno si se lo establece específicamente. Si no se establece el entorno, el tamaño de celda predeterminado se determina según el tipo de datos zonales como se informa a continuación:
| Analysis Cell Size |
Muestra de código
Ejemplo 1 de TabulateArea (ventana de Python)
Este ejemplo devuelve una tabla con el área de cada valor de clase contenida en cada zona.
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)
Ejemplo 2 de TabulateArea (secuencia de comandos independiente)
Este ejemplo devuelve una tabla con el área de cada valor de clase contenida en cada zona.
# 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)
Entornos
- Auto ejecución
- Tamaño de celda
- Compresión
- Espacio de trabajo actual
- Extensión
- Transformaciones geográficas
- Máscara
- Palabra clave CONFIG de salida
- Sistema de coordenadas de salida
- Nombres de campos calificados
- Espacio de trabajo temporal
- Alinear ráster
- Tamaño de tesela
- Transferir descripciones de dominio de campo
Información sobre licencias
- ArcGIS Desktop Basic: Requiere Spatial Analyst
- ArcGIS Desktop Standard: Requiere Spatial Analyst
- ArcGIS Desktop Advanced: Requiere Spatial Analyst