Geometría zonal (Spatial Analyst)

Disponible con una licencia de Spatial Analyst.

Resumen

Calcula, para cada zona de un dataset, la medida de geometría especificada (área, perímetro, grosor o características de la elipse).

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

Ilustración

Ilustración de Geometría zonal
OutRas = ZonalGeometry(InRas1,"VALUE","AREA")

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 salida 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 un ráster de alineación, el tamaño de celda se calcula a partir de la anchura o la altura de la extensión dividido por 250, donde 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.

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

  • El tipo de datos del ráster de salida para cada uno de los tipos de geometría será de punto flotante.

  • 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

ZonalGeometry(in_zone_data, zone_field, {geometry_type}, {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
geometry_type
(Opcional)

Tipo de geometría que se calculará.

  • AREAEl área para cada zona.
  • PERIMETEREl perímetro para cada zona.
  • THICKNESSEl punto más profundo (o más grueso) dentro de la zona desde las celdas circundantes.
  • CENTROIDLocaliza los centroides de cada zona.
String
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

Valor de retorno

NombreExplicaciónTipo de datos
out_raster

El ráster de geometría zonal de salida.

Raster

Muestra de código

Ejemplo 1 de ZonalGeometry (ventana de Python)

Este ejemplo determina el área 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"
outZonalGeometry = ZonalGeometry("zones.shp", "Classes", "AREA", 0.2)
outZonalGeometry.save("C:/sapyexamples/output/zonegeomout3")
Ejemplo 2 de ZonalGeometry (secuencia de comandos independiente)

Este ejemplo determina el área para cada zona definida por el shapefile del polígono de entrada.

# Name: ZonalGeometry_Ex_02.py
# Description:Calculates for each zone in a dataset the specified geometry 
#   measure (area, perimeter, thickness, or the characteristics 
#   of ellipse).
# 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"
cellSize = 0.2

# Execute ZonalStatistics
outZonalGeometry = ZonalGeometry(inZoneData, zoneField, "AREA", cellSize)  

# Save the output 
outZonalGeometry.save("C:/sapyexamples/output/zonegeomout2")

Información de licenciamiento

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

Temas relacionados