Asignación euclidiana (Spatial Analyst)
Resumen
Calcula, para cada celda, el origen más cercano según la distancia euclidiana.
Ilustración
Uso
-
Los datos de origen de entrada pueden ser un ráster o una clase de entidad.
-
Cuando los datos de origen de entrada son un ráster, el conjunto de celdas de origen consta de todas las celdas del ráster de origen que tengan valores válidos. Las celdas con valores NoData no se incluyen en el conjunto de origen. El valor 0 se considera un origen legítimo. Se puede crear fácilmente un ráster de origen mediante las herramientas de extracción.
-
Cuando los datos de origen de entrada son una clase de entidad, las ubicaciones de origen se convierten internamente en un ráster antes de realizar el análisis. La resolución del ráster se puede controlar con el parámetro Tamaño de celda de salida o con el entorno de Tamaño de celda. Por defecto, la resolución se determinará por medio el valor más bajo del ancho o la altura de la extensión de las entidades de entrada, en la referencia espacial de entrada, dividido por 250.
Al utilizar datos de entidad poligonal para los datos de origen de entrada, se debe tener cuidado con la manera en que el tamaño de celda de salida se maneja cuando es grueso en relación con los detalles presentes en la entrada El proceso interno de rasterización emplea el mismo Tipo de asignación de celda por defecto que la herramienta Polígono a ráster, que es CELL_CENTER. Esto significa que los datos no ubicados en el centro de la celda no se incluirán en la salida de origen rasterizada intermedia, y por lo tanto no se representan en los cálculos de distancia. Por ejemplo, si sus orígenes son una serie de polígonos pequeños, como huellas de edificios, que son pequeñas en relación con el tamaño de la celda de salida, es posible que solo algunos de ellos caigan debajo de los centros de las celdas ráster de salida, ocasionando aparentemente que la mayor parte de los otros se pierdan en el análisis.
Para evitar esta situación, como un paso intermedio, puede rasterizar las entidades de entrada directamente con la herramienta Polígono a ráster y establecer un campo de Prioridad, y utilizar la salida resultante como entrada para la herramienta de distancia. Alternativamente, puede seleccionar un tamaño de celda lo suficientemente pequeña para capturar la cantidad adecuada de detalle de las entidades de entrada.
-
La Distancia máxima se especifica en las mismas unidades de mapa que los datos de origen de entrada.
-
El ráster de valor de entrada es útil si el ráster de entrada o los datos de origen de la entidad son un ráster derivado de una función que da como resultado uno o cero. Estas funciones pierden sus valores de zona originales asociados con las ubicaciones de la celda de origen. El ráster de valor de entrada puede restaurar estos valores o permitir el análisis de combinaciones adicionales de valores de zona dentro de las celdas de origen.
-
Si utiliza un ráster de valor de entrada, podría cambiar la configuración y los resultados de la salida de asignación euclidiana. No afectará la distancia euclidiana opcional ni los resultados de dirección.
-
Si se estableció una Máscara en el entorno y las celdas que serán enmascaradas crearán una máscara en el origen, los cálculos euclidianos ocurrirán en las celdas de origen restantes. Las celdas de origen con máscaras no se considerarán en los cómputos. Las ubicaciones de estas celdas se asignarán como NoData en los rásteres de salida.
-
Los valores NoData creados por las celdas con máscaras se ignoran en los cálculos de las ubicaciones de celda sin origen. La distancia euclidiana de las celdas detrás de los valores NoData se calcula como si el valor NoData no estuviera presente. Cualquier ubicación de celdas asignada como NoData por la máscara en la superficie de entrada recibirá NoData en todos los rásteres de salida.
Sintaxis
Parámetro | Explicación | Tipo de datos |
in_source_data |
Ubicaciones de origen de entrada. Esto es un dataset de entidades o ráster que identifica las celdas o las ubicaciones para las cuales se calcula la distancia euclidiana de cada ubicación de celda de salida. Para los rásteres, el tipo de entrada puede ser de tipo entero o punto flotante. Si el ráster de origen de entrada es de punto flotante, se debe establecer el {in_value_raster} y debe ser del tipo entero. El ráster de valores tendrá precedencia sobre cualquier configuración del {source_field}. | Raster Layer | Feature Layer |
maximum_distance (Opcional) | Define el umbral que los valores de distancia acumulada no pueden superar. Si un valor de distancia euclidiana acumulada supera este valor, el valor de salida de la ubicación de la celda será NoData. La distancia predeterminada es hasta el borde del ráster de salida. | Double |
in_value_raster (Opcional) |
Ráster entero de entrada que identifica los valores de la zona que se deben utilizar para cada ubicación de origen de entrada. En cada ubicación de origen (celda o entidad), el valor definido por el {in_value_raster} se asignará a todas las celdas asignadas a la ubicación de origen para el cómputo. El ráster de valores tendrá precedencia sobre cualquier configuración del {source_field}. | Raster Layer |
cell_size (Opcional) | El tamaño de celda con el que se creará el ráster de salida. Esto será el valor del entorno si está establecido explícitamente. Si no se encuentra establecido en el entorno, el tamaño de celda predeterminado dependerá de si los datos de origen de entrada son un ráster o una entidad, como se ilustra a continuación:
| Analysis Cell Size |
source_field (Opcional) | El campo que se utiliza para asignar los valores a las ubicaciones de origen. Debe ser de tipo entero. Si el {in_value_raster} se ha establecido, los valores de esa entrada tendrán precedencia sobre cualquier configuración para el {source_field}. | Field |
out_distance_raster (Opcional) | Ráster de distancia euclidiana de salida. El ráster de distancia identifica, para cada celda, la distancia euclidiana hasta la celda de origen más próxima, el conjunto de celdas de origen o la ubicación del origen. El ráster de salida es de tipo de punto flotante. | Raster Dataset |
out_direction_raster (Opcional) | Ráster de salida de dirección euclidiana. El ráster de dirección contiene la dirección calculada, en grados, cada centro de celdas pertenece al centro de celdas de origen más próximo. El rango de valores es de 0 grados hasta 360 grados, con el 0 reservado para las celdas de origen. Hacia el este (derecha) es 90 y los valores aumentan en el sentido de las agujas del reloj (180 es sur, 270 es oeste y 360 es norte). El ráster de salida no es de tipo entero. | Raster Dataset |
Valor de retorno
Nombre | Explicación | Tipo de datos |
out_allocation_raster |
El ráster de asignación euclidiana de salida. Los valores de las celdas (zonas) identifican la ubicación del origen más cercano. El ráster de salida no es de tipo entero. | Raster |
Ejemplo de código
La siguiente secuencia de comandos de la ventana de Python muestra cómo utilizar la herramienta EuclideanAllocation.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
eucAllocate = EucAllocation("observers", 50000, "elevation", 25, "FID",
"c:/sapyexamples/output/outeucdist",
"c:/sapyexamples/output/outeucdir")
eucAllocate.save("c:/sapyexamples/output/eucalloc")
Calcula, para cada celda, la zona de ubicación del origen más cercano en la distancia euclidiana.
# Name: EucAllocation_Ex_02.py
# Description: Calculates, for each cell, the zone of the closest
# source location in Euclidean distance.
# 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
inSource = "observers.shp"
maxDist = 50000
valRaster = "elevation"
cellSize = 25
sourceField = "FID"
optOutDist = "c:/sapyexamples/output/outeucdist02"
optOutDir = "c:/sapyexamples/output/outeucdir02"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute EucAllocation
eucAllocate = EucAllocation(inSource, maxDist, valRaster, cellSize,
sourceField, optOutDist, optOutDir)
# Save the output
eucAllocate.save("c:/sapyexamples/output/eucalloc02")