Geometría zonal como tabla (Spatial Analyst)

Disponible con una licencia de Spatial Analyst.

Resumen

Calcula, para cada zona de un dataset, las medidas de geometría (área, perímetro, grosor y características de la elipse) y muestra los resultados como una tabla.

Más información acerca de cómo funciona la Geometría zonal

Ilustración

Ilustración de Geometría zonal como tabla
ZonalGeometryAsTable(InRas1,"VALUE",Out_Geom,1)
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

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.

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

  • Los cálculos para cada zona se registran en la tabla de salida.

  • 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 en un ráster, cada ubicación puede tener solo 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 zonas de entidad o ráster de entrada (in_zone_data en Python), el campo de zona 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.

  • En la tabla de salida, el campo de valor siempre precede a los campos que contienen los cálculos de salida zonal. El campo de valor contiene los valores de las zonas definidos por el dataset de zona.

  • Los valores para los cálculos zonales serán de punto flotante.

  • Todos los resultados de la tabla de salida se presentan en unidades de mapa, excepto para el elemento ORIENTATION, que se presenta en grados en un rango de 0 a 180. La orientación se define como un ángulo entre el eje x y el eje mayor de la elipse. Los valores del ángulo de orientación aumentan en sentido contrario a las agujas del reloj, comenzando en 0 en el Este (horizontal, a la derecha) y llegando a 90 cuando el eje mayor es vertical.

  • Si una zona determinada consiste de sólo una celda o si la zona es un sólo bloque cuadrado de celdas, la orientación de la elipse (la cual, en este caso un círculo), se establece a 90 grados.

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

Sintaxis

ZonalGeometryAsTable(in_zone_data, zone_field, out_table, {processing_cell_size})
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.

Debe ser un campo de entero del dataset zonal.

Field
out_table

Tabla de salida que contendrá el resumen de los valores de 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. Las tablas INFO no se admiten como entrada y ArcGIS Pro no pueden mostrarse.

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

Muestra de código

Ejemplo 1 de ZonalGeometryAsTable (ventana de Python)

Este ejemplo determina las mediciones de geometría para cada zona definida por el shapefile del polígono de entrada.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outZonalGeometryAsTable = ZonalGeometryAsTable("zones.shp", "Classes", "zonalgeomout", 0.2)
Ejemplo 2 de ZonalGeometryAsTable (secuencia de comandos independiente)

Este ejemplo determina las mediciones de geometría para cada zona definida por el shapefile del polígono de entrada.

# 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, outTable, processingCellSize)

Información de licenciamiento

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

Temas relacionados