Resumen
Genera líneas de conexión desde entidades de origen a entidades de destino. Esto se denomina habitualmente diagrama de araña.
Ilustración
Uso
Si las entidades de origen o destino son líneas o polígonos, los centroides de las entidades se utilizan para generar vínculos.
Las entidades de salida incluirán los siguientes campos de atributo:
- ORIG_FID: el campo ObjectID de la entidad de origen.
- ORIG_X: la coordenada x de la entidad de origen (o centroide).
- ORIG_Y: la coordenada y de la entidad de origen (o centroide).
- DEST_FID: el campo ObjectID de la entidad de destino.
- DEST_X: la coordenada x de la entidad de destino (o centroide).
- DEST_Y: la coordenada y de la entidad de destino (o centroide).
- LINK_DIST: la longitud del vínculo de salida, medida en la unidad de distancia especificada.
- GROUP_ID: los valores de campo de grupo que se comparten entre pares vinculados de entidades de origen y destino. Este campo solo se agregará si se especifican campos de grupo tanto de origen como de destino.
- COLOR_ID: un valor numérico que se utiliza para simbolizar orígenes o grupos en máximo ocho vínculos coloreados únicos. Los valores son números aleatorios entre 1 y 8.
- LINK_COUNT: la cantidad de vínculos superpuestos. Se agrega cuando especifica agregar vínculos superpuestos.
- Los campos de estadísticas especificados al agregar vínculos superpuestos también se agregarán a la clase de entidad de salida.
Las entidades de origen y de destino se pueden especificar como la misma capa o dataset. Si se usan los mismos datos para los orígenes y los destinos, no se generarán vínculos desde una entidad de origen a otra de destino con el mismo Id. de objeto, puesto que esta línea de longitud cero es un error de geometría nula.
Esta herramienta se puede utilizar para relaciones tanto de uno a uno como de uno a muchos. Por ejemplo, puede vincular un robo de vehículo a motor con la ubicación de recuperación (de uno a uno), o bien realizar un análisis de proximidad para comprender las distancias entre una ubicación de sede central a varias ubicaciones de oficinas regionales (de uno a muchos).
La capa de vínculos de salida incluirá los siguientes gráficos para ayudarle a visualizar el resultado del análisis:
- Un gráfico de barras del recuento de cada Id. de grupo, si especificó campos de grupo.
- Un gráfico de barras de la suma de longitudes de vínculos de cada Id. de origen o Id. de grupo (si especificó campos de grupo). Resulta útil para ver si algunos orígenes o grupos tienen distancias totales grandes o pequeñas a los destinos.
- Un gráfico de barras del valor medio de longitudes de vínculos de cada Id. de origen o Id. de grupo (si especificó campos de grupo). Resulta útil para ver la distancia media entre entidades o grupos de origen y sus destinos vinculados.
- Un diagrama de caja de la distribución de longitudes de vínculos de cada Id. de origen o Id. de grupo (si especificó campos de grupo). Resulta útil para ver si la mayoría de los vínculos de un origen o grupo tienen longitudes pequeñas o grandes a sus destinos, así como el resumen de distribución y rango de dichas longitudes de vínculos. Si un Id. de origen o un Id. de grupo tiene una caja pequeña en vertical, significa que las distancias de ese origen o grupo a todos los destinos vinculados eran similares. Si un Id. de origen o un Id. de grupo tiene una caja que está elevada en el eje y, la longitud de la mayoría de los vínculos será larga.
Sintaxis
arcpy.analysis.GenerateOriginDestinationLinks(origin_features, destination_features, out_feature_class, {origin_group_field}, {destination_group_field}, {line_type}, {num_nearest}, {search_distance}, distance_unit, {aggregate_links}, {sum_fields})
Parámetro | Explicación | Tipo de datos |
origin_features | Las entidades de entrada desde las que se generarán los vínculos. | Feature Layer |
destination_features | Las entidades de destino a las que se generarán los vínculos. | Feature Layer |
out_feature_class | La clase de entidad de polilínea de salida que contendrá los vínculos de salida. | Feature Class |
origin_group_field (Opcional) | El campo de atributo de las entidades de origen de entrada que se usará para la agrupación. Las entidades que tengan el mismo valor de campo de grupo entre orígenes y destinos se conectarán con un vínculo. | Field |
destination_group_field (Opcional) | El campo de atributo de las entidades de destino de entrada que se usará para la agrupación. Las entidades que tengan el mismo valor de campo de grupo entre orígenes y destinos se conectarán con un vínculo. | Field |
line_type (Opcional) | Especifica si se utilizará una ruta más corta en un esferoide (geodésico) o Tierra proyectada cartesiana (planar) al generar los vínculos de salida. Las líneas geodésicas serán ligeramente curvas cuando su longitud supere aproximadamente 50 kilómetros, ya que la curvatura de la Tierra hace que la distancia más corta entre dos puntos aparezca curvada cuando se visualiza en un mapa 2D. Se recomienda utilizar el tipo de línea Geodésico con datos almacenados en un sistema de coordenadas que no sea adecuado para mediciones de distancias (por ejemplo, Web Mercator y cualquier sistema de coordenadas geográficas) o cualquier dataset que abarque una extensa área geográfica.
| String |
num_nearest (Opcional) | El número máximo de vínculos que se generará por entidad de origen a las entidades de destino más cercanas. Si no se especifica ningún número, la herramienta generará vínculos entre todas las entidades de origen y destino. Por ejemplo, si se usa un valor de 1, se generarán vínculos entre cada entidad de origen y su entidad de destino más cercana. | Double |
search_distance (Opcional) | La distancia máxima entre una entidad de origen y destino que producirá una entidad de vínculo en la salida. La unidad de la distancia de búsqueda se especifica en el parámetro de unidad de distancia. Si no se especifica ninguna distancia de búsqueda, la herramienta generará vínculos entre todas las entidades de origen y destino, independientemente de la distancia que las separe. | Double |
distance_unit | Especifica las unidades utilizadas para medir la longitud de los vínculos. Las distancias de cada vínculo aparecerán en el campo LINK_DIST. Si no se especifica una unidad de distancia, se utilizará la unidad de distancia del sistema de coordenadas de las entidades de origen.
| String |
aggregate_links (Opcional) | Especifica si se agregarán vínculos superpuestos.
| Boolean |
sum_fields [sum_fields,...] (Opcional) | Especifica campos numéricos de las entidades de destino que contienen valores de atributo que se resumirán cuando se superpongan varios vínculos. Se pueden especificar varias estadísticas y combinaciones de campos. Los valores nulos se excluyen de todos los cálculos estadísticos. Están disponibles los siguientes tipos de estadísticas:
| Value Table |
Muestra de código
A continuación, se muestra cómo utilizar la función GenerateOriginDestinationLinks en la ventana de Python:
import arcpy
arcpy.env.workspace = "C:/data/input/genODLinks.gdb"
arcpy.GenerateOriginDestinationLinks_analysis(
"Station_100", "City_FireResponses", "Station_100_OD_Links")
El siguiente script de Python muestra cómo utilizar la función GenerateOriginDestinationLinks en un script independiente:
# Name: GenerateODLinks.py
# Description: Finds 10 nearest links within 25 miles from the origin fire
# stations to the destination response points.
# import system modules
import arcpy
# set workspace environment
arcpy.env.workspace = "C:/data/input/genODLinks.gdb"
# set required parameters
origin_features = "Station_100"
destination_features = "City_FireResponses"
out_feature_class = "Station_100_OD_Links"
# optional parameters
origin_group_field = 'STA_NUM'
destination_group_field = 'District'
line_type = 'PLANAR'
num_nearest = 10
search_distance = 25
distance_unit = 'MILES'
aggregate_links='AGGREGATE_OVERLAPPING'
sum_fields = 'TimeSpentOnCall SUM'
# make links between fire stations and call response points
arcpy.GenerateOriginDestinationLinks_analysis(
origin_features, destination_features, out_feature_class,
origin_group_field, destination_group_field, line_type, num_nearest,
search_distance, distance_unit, aggregate_links, sum_fields)
Información de licenciamiento
- Basic: Sí
- Standard: Sí
- Advanced: Sí