Disponible con una licencia de Spatial Analyst.
Resumen
Genera la red de conectividad de mínimo coste entre dos o más regiones de entrada.
Obtenga más información sobre cómo funciona la herramienta Coste-conectividad
Ilustración
Uso
Las regiones de entrada pueden ser datos ráster o datos de entidad.
En un ráster, una región es un grupo de celdas con el mismo valor que son contiguas unas a otras (adyacentes). Cuando las regiones de entrada se identifican mediante un ráster, si hay zonas (celdas con el mismo valor) formadas por varias regiones, ejecute primero la herramienta Grupo de regiones como paso de preprocesamiento para asignar valores únicos a cada región. Utilice el ráster resultante como las regiones de entrada para la herramienta Conectividad-coste.
Si las regiones de entrada se identifican mediante datos de polígonos, líneas o puntos, estos se convierten a ráster utilizando el Id. de entidad para garantizar que las regiones resultantes tengan valores únicos. Por lo tanto, los polígonos multiparte no se pueden utilizar como entrada. Si se introducen datos multipunto, la herramienta Conectividad-coste selecciona aleatoriamente uno de los puntos de la ubicación como el valor de la región.
No puede controlar la resolución de las regiones de la entidad de entrada rasterizada con el entorno de Tamaño de celda. De forma predeterminada, la resolución se establece como la resolución del ráster de coste de entrada.
Al utilizar datos de entidad poligonal para los datos de regiones 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 de rasterización interno emplea el mismo método Tipo de asignación de celda predeterminado que la herramienta De polígono a ráster, que es Centro de celda. Esto significa que los datos no ubicados en el centro de la celda no se incluirán en la región rasterizada intermedia y, por lo tanto, no se representan en los cálculos de distancia. Por ejemplo, si sus regiones 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 paso intermedio, podría rasterizar las entidades de entrada directamente con la herramienta De polígono a ráster, definir un campo de Prioridad y utilizar la salida resultante como entrada para la herramienta Coste-conectividad. Alternativamente, puede seleccionar un tamaño de celda lo suficientemente pequeña para capturar la cantidad adecuada de detalle de las entidades de entrada.
Si la entrada de la región es una entidad, se utilizará el campo ObjectID (por ejemplo, OID o FID, en función del tipo de entrada de entidad) como identificador de región.
Si las regiones de entrada son de ráster y el rango de los Id. de fila es muy grande (incluso si hay apenas unas pocas regiones), el rendimiento de Coste-conectividad puede verse perjudicado.
Las ubicaciones de celda con NoData en el Ráster de costes de entrada actúan como barreras.
La extensión de procesamiento predeterminada es la misma que la del Ráster de costes de entrada.
El ráster de costes no puede contener valores de cero debido a que el algoritmo es un proceso multiplicativo. Si el ráster de costes contiene valores cero y estos valores representan áreas de coste más bajo, cambie los valores cero a un valor positivo bajo (como 0,01) antes de ejecutar la herramienta Coste-conectividad, ejecutando primero la herramienta Evaluación condicional. Si las áreas con un valor cero representan áreas que deberían excluirse del análisis, estos valores deberían cambiarse a NoData antes de ejecutar la herramienta Coste-conectividad, ejecutando primero la herramienta Establecer nulos.
Para la Clase de entidad de salida de conexiones vecinas, los vecinos no se identifican mediante el coste de distancia. Por lo tanto, el vecino más cercano a una región será el más barato al que viajar, en lugar de serlo el más cercano en distancia. Se lleva a cabo una operación de asignación de costes para identificar las regiones vecinas entre sí.
La red de salida óptima se crea a partir de las rutas generadas en la salida opcional de conexiones vecinas. Las rutas generadas en la salida opcional de conexiones vecinas se convierten en una teoría de grafos. Las regiones son los vértices, las rutas son los bordes y los costes acumulados son los pesos de los bordes. El árbol de expansión mínima se calcula a partir de la representación gráfica de las rutas para determinar la red de ruta de menor coste necesaria para viajar entre las regiones.
Cada ruta de menor coste llega primero al límite exterior del polígono o región de varias celdas. Desde el perímetro de la región, la herramienta sigue las rutas con segmentos de línea adicionales, permitiendo la entrada y salida de puntos entre las regiones y el movimiento dentro de ellas. No existe coste de movimiento adicional entre estos segmentos de línea.
Se pueden utilizar las herramientas Coste de distancia y Ruta de coste para conectar regiones que no están conectadas directamente en el árbol de expansión mínima según la información previa. Por ejemplo, puede que una determinada región necesite una ruta de escape alternativa para que los bomberos puedan evacuar la región. Dado que las rutas resultantes de la Ruta de coste solo llegan hasta el borde de una región, si desea utilizar estas rutas adicionales en la red integrada para realizar otros análisis de red, necesitará ampliar estas rutas dentro de la región a fin de conectarlas a las rutas de la red del árbol de expansión mínima.
La salida opcional de conexiones vecinas se puede utilizar como red alternativa a la red del árbol de expansión mínima. Esta salida conecta cada región con sus regiones de coste vecinas, produciendo así una red más compleja con muchas rutas. La clase de entidad se puede utilizar tal cual o como base desde la cual crear la red deseada. Para ello, puede seleccionar las rutas específicas que desee tener en la red usando el botón Seleccionar por atributos o el grupo Seleccionar de la pestaña Mapa o bien la herramienta de geoprocesamiento Seleccionar. La decisión de las rutas que se van a seleccionar puede basarse en el conocimiento del área y en las estadísticas asociadas con las rutas de la tabla de atributos resultante.
-
La red resultante, ya sea a partir del árbol de expansión mínima o a partir de las conexiones vecinas opcionales, se puede convertir a una red de Network Analyst para realizar un análisis de red adicional.
Consulte Entornos de análisis y Spatial Analyst para obtener detalles adicionales sobre los entornos de geoprocesamiento que se aplican a esta herramienta.
Sintaxis
CostConnectivity(in_regions, in_cost_raster, out_feature_class, {out_neighbor_paths})
Parámetro | Explicación | Tipo de datos |
in_regions | Las regiones de entrada que se deben conectar mediante la red de mínimo coste. Las regiones se pueden definir mediante un dataset ráster o un dataset de entidades. Si la entrada de la región es un ráster, las regiones se definen mediante grupos de celdas contiguas (adyacentes) con el mismo valor. Cada región se debe numerar de forma única. Las celdas que no formen parte de ninguna región deberán ser NoData. El tipo de ráster debe ser un número entero y los valores pueden ser positivos o negativos. Si la entrada de la región es un dataset de entidades, puede tratarse de polígonos, líneas o puntos. Las regiones de la entidad poligonal no pueden estar compuestas por polígonos multiparte. | Raster Layer; Feature Layer |
in_cost_raster | Ráster que define la impedancia o el coste de hacer un movimiento planimétrico por medio de cada celda. El valor de cada ubicación de celda representa la distancia de coste por unidad para moverse a través de la celda. Cada valor de ubicación de celda se multiplica por la resolución de la celda mientras que también se compensa por el movimiento diagonal para obtener el coste total de pasar por medio de la celda. Los valores del ráster de coste pueden ser enteros o de punto flotante, pero no pueden ser negativos o cero (no puede tener un coste negativo o cero). | Raster Layer |
out_feature_class | Clase de entidad de polilínea de salida que corresponde a la red óptima (de mínimo coste) de rutas necesaria para conectar todas las regiones de entrada. Cada ruta (o línea) está numerada de forma única y hay campos adicionales en la tabla de atributos donde se almacena información específica sobre la ruta. Estos campos incluyen lo siguiente:
Esta información ofrece una perspectiva de las rutas que hay dentro de la red. Como cada ruta se representa mediante una línea única, habrá varias líneas en las ubicaciones donde las rutas transcurren por el mismo camino. | Feature Class |
out_neighbor_paths (Opcional) | Clase de entidad de polilínea de salida que identifica todas las rutas de cada región hacia sus vecinos más próximos. Cada ruta (o línea) está numerada de forma única y hay campos adicionales en la tabla de atributos donde se almacena información específica sobre la ruta. Estos campos incluyen lo siguiente:
Esta información ofrece una perspectiva de las rutas que hay dentro de la red y resulta especialmente útil para decidir las rutas que se deben eliminar, en caso necesario. Como cada ruta se representa mediante una línea única, habrá varias líneas en las ubicaciones donde las rutas transcurren por el mismo camino. | Feature Class |
Muestra de código
La siguiente secuencia de comandos de la ventana de Python muestra cómo utilizar la herramienta CostConnectivity.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outCostConn = CostConnectivity("source.shp", "elevation")
outCostConn.save("C:/sapyexamples/output/costdist")
Genera la red óptima de rutas de menor coste que conectan las regiones de entrada entre sí.
# Name: CostConnectivity_Ex_02.py
# Description: Calculates for each cell ...
#
# 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
inSourceData = "source.shp"
inCostRaster = "elevation"
maxDistance = 20000000
outBkLinkRaster = "C:/sapyexamples/output/outbklink"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute CostDistance
outCostConnectivity = CostConnectivity(inSourceData, inCostRaster)
# Save the output
outCostConnectivity.save("C:/sapyexamples/output/outcostconn")
Entornos
Información de licenciamiento
- Basic: Requiere Spatial Analyst
- Standard: Requiere Spatial Analyst
- Advanced: Requiere Spatial Analyst