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).
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.
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ámetro | Explicación | Tipo 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á.
| 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
Nombre | Explicación | Tipo de datos |
out_raster | El ráster de geometría zonal de salida. | Raster |
Muestra de código
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")
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")
Entornos
Información de licenciamiento
- Basic: Requiere Spatial Analyst
- Standard: Requiere Spatial Analyst
- Advanced: Requiere Spatial Analyst