Histograma de zona (Spatial Analyst)
Resumen
Crea una tabla y un gráfico de histograma que muestran la distribución de frecuencia de los valores de celda en la entrada de Valor para cada zona única.
Ilustración
Uso
-
Un histograma de zona le permite investigar la distribución de frecuencia de los valores en un dataset dentro de las clases de otro dataset. Los ejemplos incluyen distribución de pendiente dentro de clases de uso de suelo, distribución de precipitaciones dentro de clases de elevación o distribución de delitos por zonas de patrullaje.
Una zona se define como todas las áreas de la entrada que tienen el mismo valor. No es necesario que las áreas sean contiguas. Tanto los datasets ráster como los de entidades se pueden utilizar para la entrada de zona.
Cuando tanto las entradas de zona como las de valor son rásteres de la misma resolución, se utilizarán directamente.
Si las resoluciones son diferentes, se aplica un remuestreo interno para hacerlas coincidir antes de realizar la operación zonal.
En el caso de que no haya celdas NoData en las entradas, el remuestreo puede causar la aparición de áreas de NoData más grandes que las esperadas en la salida. Para evitar esta situación Realice un remuestreo de los rásteres de entrada más gruesos a la resolución del ráster de entrada más fino o establezca el Tamaño de celda como Cantidad mínima de entradas del entorno del Análisis ráster.
Si la entrada de zona es un dataset ráster, debe tener una tabla de atributos. Por lo general, la tabla de atributos se crea automáticamente para rásteres enteros, pero puede no ser así bajo determinadas circunstancias. Puede utilizar Construir tabla de atributos ráster para crear una.
Se recomienda utilizar sólo rásteres como entrada de zona, ya que le ofrece mayor control sobre la conversión de vector a ráster. Esto le ayudará a asegurar la obtención constante de los resultados esperados.
Si la entrada de zona es un dataset de entidad, se le aplicará internamente una conversión de vector a ráster. Para asegurar que los resultados de la conversión se alinearán correctamente con el ráster de valores, se recomienda que verifique que los rásteres de extensión y alineación estén configurados apropiadamente en las configuraciones de entorno y de ráster.
Debido a que el ráster interno debe tener una tabla de atributos, ocurrirá un error si no se creó una en la conversión. Si esto ocurre, convierta el dataset de entidades directamente con De entidad a ráster, De polígono a ráster, De punto a ráster, o De polilínea a ráster. Genere una tabla de atributos para este como se indica en la sugerencia anterior y utilice el ráster resultante como entrada de zona.
Si la entrada de zona es un dataset de entidades con relativamente entidades pequeñas, recuerde que la resolución de la información debe ser adecuada en relación a la resolución del ráster de valores. Si las áreas de entidades simples son similares o más pequeñas que el área de celdas simples en el ráster de valores, en la conversión entidad a ráster es posible que algunas de estas zonas no estén representadas.
Para demostrarlo, intente convertir el dataset de entidades a un ráster con la herramienta de conversión de entidad a ráster adecuada y especifique la resolución para que sea la del ráster de valores. El resultado de esta conversión le indicará cuál será la salida predeterminada de la operación zonal.
Si en la salida tiene menos resultados que podría haber esperado, debe determinar una resolución del ráster adecuada que representará el detalle de la entrada de entidad y utilizar esta resolución como el Tamaño de celda de la Configuración de análisis ráster del entorno.
Si la entrada zonal es un dataset de entidad de punto, es probable que haya más de un punto dentro de cualquier celda en particular del ráster de entrada de valor. Para dichas celdas, el valor zonal se determina mediante el punto con el Id. de entidad más alto.
Si la entrada de la entidad zonal tiene 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 las estadísticas zonales con iteración para cada una de las zonas poligonales e intercalar los resultados.
El campo de zona debe ser de tipo entero o cadena de caracteres.
Al especificar los datos de zona de entrada, el campo de zona predeterminada será el primer campo válido disponible. Si no existen otros campos válidos, el campo ObjectID (por ejemplo, OID o FID) será el valor predeterminado.
Las celdas en el ráster del valor de entrada pertenece a la zona en que sus centros de celda se encuentran. En este caso las zonas son las zonas después de cualquier conversión necesaria para el ráster y remuestreo se ha llevado a cabo.
En el gráfico de histograma, la cantidad de clases (bins) para cada zona está determinada por el Ráster de valor de entrada.
- Si se especifica una capa, entonces la simbología de la capa define la cantidad de clases.
- Si se especifica un dataset, predeterminadamente habrá 256 clases, a menos que la entrada sea un entero con menos de 26 valores únicos, en cuyo caso este será el conteo total de valores únicos.
Un gráfico de histograma de zona no se genera por defecto. Para que se cree cuando la herramienta está en ejecución, especifique el Nombre de gráfico de salida.
El gráfico es sólo temporal (en la memoria). Para hacer una versión permanente, utilice la herramienta Guardar gráfico para crear un archivo de gráfico .grf o uno de los demás formatos de salida disponibles en esa herramienta.
Sintaxis
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_value_raster |
Los valores de ráster para crear los histogramas. | Raster Layer |
out_table |
El archivo de la tabla de salida. El gráfico opcional se crea a partir de la información en la tabla. | Table |
out_graph (Opcional) |
El nombre del gráfico de salida para mostrar. El gráfico es temporal. Para guardarlo, utilice la herramienta Guardar gráfico. | Graph |
Ejemplo de código
En este ejemplo se crea una tabla .dbf de histograma de zona.
import arcpy from arcpy import env from arcpy.sa import * env.workspace = "C:/sapyexamples/data" outZonHisto = ZonalHistogram("zoneras", "zonfield", "valueras", "znhist_tbl.dbf")
En este ejemplo se crea una tabla .dbf de histograma de zona y un archivo de gráfico.
# Name: ZonalHistogram_Ex_02.py # Description: Creates a zonal histogram output table and # a graph showing the amount of value cells # for each unique input zone. # 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 = "zonras" zoneField = "zonfield" inValueRaster = "valueras" outTable = "C:/sapyexamples/output/zonehist_tbl.dbf" outGraph = "zonehist_gra" # Check out the ArcGIS Spatial Analyst extension license arcpy.CheckOutExtension("Spatial") # Execute ZonalHistogram ZonalHistogram(inZoneData, zoneField, inValueRaster, outTable, outGraph)