Área tabulada (Spatial Analyst)

Disponible con una licencia de Spatial Analyst.

Resumen

Calcula áreas tabuladas entre dos datasets y genera como salida una tabla.

Ilustración

Ilustración de Área tabulada
TabulateArea(ZoneRas, "VALUE", ClassRas, "VALUE", Tabarea1.dbf, 1)

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 alguna de las entradas es un ráster, debe tener un tipo de datos de entero.

  • Si alguno de los datasets de entrada es una clase de entidad, se convierte internamente en un ráster antes de realizar el análisis mediante el uso de Tamaño de celda y la alineación de celdas de otro ráster de entrada.

  • Si ambas entradas son rásteres y sus celdas no están alineadas, las entradas se remuestrearán durante el análisis. Si el entorno Ráster de alineación no se ha especificado explícitamente, las celdas se alinean internamente usando Datos de clase de entidad o ráster de entrada (in_class_data en Python). Si ambos rásteres tienen el mismo tamaño de celda y las celdas están alineadas, el remuestreo no se producirá.

  • Si ambos datasets de entrada son clase de entidad, se convierten internamente en un ráster antes de realizar el análisis mediante el uso de Procesar tamaño de celda (processing_cell_size en Python) o desde el entorno de análisis de ráster, si se especifica.

  • En el caso de que los Datos de zonas de entidad o ráster de entrada (in_zone_data en Python) sean una entidad, si hay entidades de zona que no se superpongan con ningún centro de celdas del ráster de clase, dichas zonas no se convertirán al ráster de zona interno. Como resultado, las zonas no se representan en la salida. Puede administrar esta configuración determinando un valor adecuado para el entorno Tamaño de celda, que conservará el nivel de detalle deseado de las zonas de entidad y lo especificará en el entorno de análisis.

  • Si las entradas tienen entidades superpuestas, el análisis zonal se realizará para cada entidad individual.

  • Si se utilizan datos de líneas o puntos como clase de entidad de entrada, se reportará el área intersecada por esas entidades.

  • 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.

  • El Tamaño de celda de procesamiento se puede definir mediante un valor numérico u obtenerse desde un dataset ráster existente. Si el tamaño de celda no se ha especificado explícitamente como el valor del parámetro, se deriva del entorno Tamaño de celda si se ha especificado. Si no se ha especificado el tamaño de celda del parámetro o el tamaño de celda del entorno, el tamaño de celda de salida predeterminado se determina según el tipo de dataset de entrada de la siguiente manera:

    • Si el dataset de entrada es un ráster, se usa el tamaño de celda del dataset.
    • Si el dataset de entrada es una entidad y se ha configurado el entorno Ráster de alineación, se usa el tamaño de celda del ráster de alineación. Si no se ha configurado ningún ráster de alineación, el tamaño de celda se calcula a partir del valor más pequeño de anchura o altura de la extensión dividido por 250 en el que la extensión se encuentra en el sistema de coordenadas de salida especificado en el entorno.
  • Si el tamaño de celda se especifica usando un valor numérico, la herramienta lo usa directamente para el ráster de salida.

    Si el tamaño de celda se especifica mediante un dataset ráster, el parámetro muestra la ruta del dataset ráster en lugar del valor del tamaño de celda. El tamaño de celda de ese dataset ráster se usa directamente en el análisis, siempre que la referencia espacial del dataset sea la misma que la referencia espacial de salida. Si la referencia espacial del dataset es diferente a la referencia espacial de salida, se proyecta en función del Método de proyección de tamaño de celda seleccionado.

  • El parámetro Clases como filas en tabla de salida (classes_as_rows en Python) permite seleccionar el tipo de esquema de tabla de salida. Active este parámetro (CLASSES_AS_ROWS en Python) para representar las filas de clases o desactívelo (CLASSES_AS_FIELDS en Python) para representar las clases como campos.

    Cuando las clases se representan en filas, la salida de tabla puede relacionarse y consultarse para extraer información de área por rásteres de zona o clase.

  • La salida de esta herramienta es una tabla.

    Cuando se desactiva el parámetro Clases como filas en tabla de salida (CLASSES_AS_FIELDS en Python) en esta tabla, se cumple lo siguiente:

    • 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.

    Cuando se activa el parámetro Clases como filas en tabla de salida (CLASSES_AS_ROWS en Python), se cumple lo siguiente:

    • Habrá un registro para cada valor único del dataset de zona que tenga un valor único del dataset de clase.
    • Habrá campos individuales que identifican el campo de zona, el campo de clase, el recuento y el área de cada clase incluida en cada zona.

  • Consulte Entornos de análisis y Spatial Analyst para obtener detalles adicionales sobre los entornos de geoprocesamiento que se aplican a esta herramienta.

Sintaxis

TabulateArea(in_zone_data, zone_field, in_class_data, class_field, {out_table}, {processing_cell_size}, {classes_as_rows})
ParámetroExplicaciónTipo de datos
in_zone_data

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

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 en un espacio de trabajo de geodatabase y una tabla dBASE en un espacio de trabajo de archivo.

Table
processing_cell_size
(Opcional)

El tamaño de celda del ráster de salida que se va a crear.

Este parámetro se puede definir mediante un valor numérico u obtenerse desde un dataset ráster existente. Si el tamaño de celda no se ha especificado explícitamente como valor de parámetro, se usa el valor del tamaño de celda del entorno si se ha especificado; de lo contrario, se utilizan reglas adicionales para calcularlo a partir de las otras entradas. Consulte la sección Uso para obtener más detalles.

Analysis Cell Size
classes_as_rows
(Opcional)

Especifica cómo se representarán los valores del ráster de clase de entrada en la tabla de salida.

  • CLASSES_AS_FIELDSLas clases se representarán como campos. Esta es la opción predeterminada.
  • CLASSES_AS_ROWSLas clases se representarán como filas.
Boolean

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

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

Información de licenciamiento

  • Basic: Requiere Spatial Analyst
  • Standard: Requiere Spatial Analyst
  • Advanced: Requiere Spatial Analyst

Temas relacionados