QGIS 3 permite la integración de los estilos (simbología) con el análisis espacial, las capacidades son amplias, en esta oportunidad se muestra un análisis espacial con simbología sencilla, posteriores artículos profundizan en el tema.
Tipo de análisis/simbología: línea que represente el trayecto más corto de una entidad de línea a un punto específico.
Procedimiento:
1.- Despliegue y cargue las capas en QGIS 3
Nota: las capas deben configurarse en el mismo sistema de coordenadas, los análisis se realizan en el sistema de proyección de la capa.
2.- Active el “Panel de estilo de capas”, esta ventana permite administrar las propiedades de todas las capas. Específicamente, trabajara sobre una capa de línea que representa una ruta dentro de una ciudad, el objetivo es graficar una línea que represente el trayecto más corto a un punto cuyas coordenadas especificaremos. En el ejemplo se ubico un punto en pantalla con las coordenadas Este: 465823 y Norte: 1112780, acorde a la Proyección UTM Zona 19 (SRC 2202).
3.- Seleccionando la capa de línea que representa la ruta, se configura el estilo de simbología como Símbolo Sencillo (Single Symbol), y se adiciona una capa de símbolo al dar clic al botón con un ícono tipo cruz de color verde.
4.- En la capa de símbolo recién creada, en la pestaña “Tipo de Capa del Símbolo” elije “Geometry Generator”.
Luego en la pestaña “Tipo de Geometría” seleccione “Cadena de Línea/de Multilinea”, este es el tipo de entidad que debe producir el código que escribirá más adelante.
5.- Debajo de la pestaña “Tipo de Geometría” se encuentra una caja de texto donde escribir el código que definirá el comportamiento de la Capa de Símbolo, haga clic sobre el botón con una “E” (símbolo de Épsilon), esto abrirá el Dialogo de Expresiones.
El Dialogo de Expresiones da acceso a funciones, variables del proyecto y sistema, permitiendo escribir códigos cortos para realizar múltiples tareas, no es tan complejo como un Script de Python sino más bien un lenguaje de comandos
Escribimos el código:
shortest_line( make_point( 465823, 1112780), $geometry)
Explicación del código:
- shortest_line( geometria1 , geometria2 ): esta función genera una geometría de línea que representa el trayecto más corto entre las dos geometrías que se pasan como argumento.
- Make_point(Valor numérico, Valor numérico): genera una geometría de punto requiriendo como argumento los números que representan las coordenadas X, Y opcional Z y M
- $geometry: representa la geometría actual en nuestro caso la capa de lineas
Las versiones anteriores de QGIS cuentan con el “Dialogo de Expresiones” en la simbología, tabla de atributos, etiquetas y en el filtrado de las propiedades de las capas vectoriales, pero ahora sus capacidades se han ampliado notablemente.
Es posible mejorar el código para que la línea se genere desde el último vértice de la Ruta para ello sencillamente modificamos el código colocando “end_point” y pasándo $geometry como argumento.
shortest_line( make_point( 465823, 1112780), end_point( $geometry) )
Si edita la linea y esta seleccionada la opción «Actualización en Vivo» la linea que representa el trayecto más corto se actualizara automáticamente, si crea nuevas lineas tomaran el mismo comportamiento. Esta es una introducción, podemos hacer otras cosas, por ejemplo determinar el trayecto a una entidad de una capa con un atributo dado, resaltar los puntos de unión, o crear una etiqueta que muestre la longitud del trayecto.
Para los archivos de ejemplo, como los descargo?
Saludos, gracias por tu interés, en este caso no considere relevante adjuntar archivos dado que puedes realizar el ejemplo con un Shapefile de linea y capturar unas coordenadas cercanas, lo importante que ambas estén bajo un mismo sistema de proyección. Las capas de fondo que ves en las imágenes se utilizaron solo para dar un contexto y fueron descargadas de Open Street Map
Muchas gracias por tu contribución, en verdad. Saludos
Gracias por tu comentario
Saludos como se puede asignar un texto o valor numérico a varios registros de una tabla de atributos en qgis 2.18, gracias de antemano.
enviar solución a mi correo
Antonio, primero los seleccionas y luego con la calculadora de campos introduces el valor
Esto es sencillamente grandioso!
Opino igual Mauricio, con esto podemos crear mapas inteligentes en visualización, análisis, en carga de atributos y en otros aspectos que manejas mejor que yo.