• Saltar a la navegación principal
  • Saltar al contenido principal
  • Saltar al pie de página
logo web Geoinnova

Geoinnova

Consultoría y Formación en SIG y Medio Ambiente

  • Geoinnova
    • Asociación
    • Equipo
    • Visor de proyectos Geoinnova
    • Geolibrería
    • Alianzas Estratégicas
  • Consultoría
    • Consultoría y Desarrollo en Sistemas de Información Geográfica
    • Consultora Ambiental
    • Turismo sostenible
    • Planificación urbana y ordenación del territorio
    • Planes Urbanos de Actuación Municipal – PUAM
    • Geomarketing
  • Servicios
    • Planero Web
    • QElectricGIS
    • Plugins
  • Formación
    • Todos los cursos
    • Webinars
    • Máster y Diplomas
    • Cursos de ArcGIS
    • Cursos de QGIS
    • Cursos de Teledetección
    • Cursos de Medioambiente
  • Medio Ambiente
    • Consultora Ambiental
    • Estudios ambientales para proyectos de energías renovables
    • Estudios de Impacto e Integración Paisajística
    • Evaluación Ambiental Estratégica de planes y programas
    • Estudio de Impacto Ambiental para proyectos
    • Cálculo huella de carbono
    • Educación Ambiental
    • Cursos de Medioambiente
  • Coworking
  • Blog
    • SIG
    • Medio Ambiente
    • Teledetección
    • Programación y Desarrollo SIG
    • Corporativo
  • Contacto
    • Soporte de Clientes – Tickets
SIG

PgRouting Layer

21/02/2020 Deja un comentario

pgRouting como tal, es una extensión de PostgreSQL para desarrollar aplicaciones de rutas de red y análisis de grafos. Es una extensión que añade enrutamiento y funcionalidad de análisis de redes a las bases de datos PostGIS/PostgreSQL.

Por otro lado, también es un complemento de QGIS bastante sencillo que requiere la instalación de pgAdmin y PostgreSQL.

¿Cómo obtener la extensión pgrouting en una BBDD?

Para poder trabajar con la extensión pgRouting, es necesario crear una nueva base de datos dentro del servidor de PostgreSQL (o un servidor propio) o en una base de datos existente.

Crear las extensiones.

Teniendo la base de datos, lo primero que hay que hacer es dotar esta base de datos de capacidades espaciales. Esto se realiza con la ayuda del constructor de consultas de SQL, añadiendo la consulta CREATE EXTENSION postgis.

Extensión postgis

También es necesario añadir una segunda consulta con otra extensión, que en este caso se corresponde con la extensión pgrouting.

Extensión pgrouting

Ya creadas las dos extensiones, hay que verificar que las extensiones se han activado correctamente. Dentro de la base de datos hay una pestaña de extensiones, en la cual deberían aparecer las extensiones que se generan por defecto cuando se crea una nueva base de datos y las dos extensiones nuevas que se han creado. En el caso de que no sea así, hay que refrescar la pestaña para que aparezcan.

Pestaña extensiones

Crear la topología.

Ahora lo que falta es añadir el shape que se va a convertir en red. Esto se realiza mediante un programa de PostGIS llamado PostGIS Shapefile Import/Export Manager. Si no sabéis como hacerlo correctamente aquí tenéis un post donde se explica cómo importar Shape a PostGIS con este programa.

Debes saber que cuando se cargan datos a una base de datos PostGIS, estos datos no presentan información topológica asociada. Esto es un problema puesto que los análisis de redes siempre se realizan de un nodo inicial a un nodo final pasando por un arco. Por tanto, hay que construir la topología de la red.

Para construir esta topología, es necesario utilizar un comando de pgrouting llamado pgr_createTopology que construirá esa topología basada en la información de geometría que presente la capa.

Comentar que es necesario que en la tabla existan dos campos, source y target. Estos campos van a recoger la información del nodo inicial y del nodo final de cada una de las calles que existen en la capa importada.

Sentencia topology

Al ejecutar estas sentencias y siendo el resultado OK, ya se podría trabajar con el complemento en QGIS.

¿Cómo trabajar con la extensión pgRouting en QGIS?

Para trabajar en QGIS, se tiene que crear en primer lugar una conexión a PostGIS desde la pestaña Capa > Añadir Capa > Añadir capas PostGIS dentro del propio QGIS. Si no estás seguro de cómo hacerlo, aquí tienes un tutorial de cómo conectar PostGIS desde QGIS.

Luego se carga la capa al panel de capas y se activa el complemento pgRouting Layer. Directamente aparecerá la base de datos de la conexión.

Por último, se selecciona el algoritmo pg_Dijsktra y ya estaría todo listo para empezar a obtener la ruta más corta entre los dos nodos que seleccionéis en la pestaña Arguments.

pgRouting Layer

Para los nodos inicial y final, 772 y 910 respectivamente, la ruta más corta es la que aparece en la siguiente imagen.

Ruta óptima

Si te ha parecido interesante y quieres seguir aprendiendo sobre esto, no te pierdas la nueva convocatoria del Curso Superior en Gestión de Bases de datos Espaciales: PostgreSQL y PostGIS.

Etiquetas: qgis

Apúntate a nuestra newsletter semanal

"*" señala los campos obligatorios

Consentimiento*
*
Este campo es un campo de validación y debe quedar sin cambios.

Información legal

Cumplimos el RGPD (Reglamenteo General de Protección de Datos) y esta en la primera información que debes saber. Responsable: Asociación Geoinnova. Finalidad: Apuntarte en nuestra base de datos para poder enviarte nuestra newsletter y cualquier otra información de interes. Legitimidad: Nos das tu consentimiento para comunicarnos contigo. Derechos: Tienes derecho a acceder, rectificar, limitar y suprimir tus datos. Para una información más ampliada entra a nuestra política de privacidad.

Artículos relacionados

Cómo instalar y agregar nuevas fuentes en QGIS
29/11/2022
Extraer valores ráster en QGIS
27/10/2022
Cómo instalar librerías python en PyQGIS
06/10/2022

Natalia Losada

Licenciada en Ciencias Ambientales con Máster en Sistemas de Información Geográfica. Desarrolla proyectos ambientales y apoyo cartográfico como técnica en la Asociación Geoinnova.

Interacciones con los lectores

¿Quieres comentarnos algo? Adelante! Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Footer

Menú Legal

  • Aviso Legal
  • Política de privacidad
  • Política de cookies
  • Términos y condiciones

Otras páginas de interes

  • Promociones y descuentos en formación
  • Formación bonificada FUNDAE

Contacto

Calle Luis Morondo Urra nº 8 Bajo A
31006 Pamplona (Navarra)
info@geoinnova.org
+34 948 117 137

Horario de atención

Lunes a Viernes - 09:00 a 14:00 y de 16:00 a 19:00.
Fines de semana y Festivos - Exclusivamente por mail.
Horario de Verano (01 de julio al 30 de agosto): De lunes a viernes de 8 a 15h.
Entidad adherida a Confianza Online Certificado de inscripción en el Registro de huella de carbono, compensación y proyectos de absorción Logo Plazox

© 2023 · Desarrollada por Geoinnova en colaboración con OikosMSP

Gestionar el Consentimiento de las Cookies
Utilizamos tecnologías como las cookies para almacenar y/o acceder a la información del dispositivo. Lo hacemos para mejorar la experiencia de navegación y para mostrar anuncios personalizados. El consentimiento a estas tecnologías nos permitirá procesar datos como el comportamiento de navegación o las identificaciones únicas en este sitio. No consentir o retirar el consentimiento, puede afectar negativamente a ciertas características y funciones.
Funcional Siempre activo
El almacenamiento o acceso técnico es estrictamente necesario para el propósito legítimo de permitir el uso de un servicio específico explícitamente solicitado por el abonado o usuario, o con el único propósito de llevar a cabo la transmisión de una comunicación a través de una red de comunicaciones electrónicas.
Preferencias
El almacenamiento o acceso técnico es necesario para la finalidad legítima de almacenar preferencias no solicitadas por el abonado o usuario.
Estadísticas
El almacenamiento o acceso técnico que es utilizado exclusivamente con fines estadísticos. El almacenamiento o acceso técnico que es utilizado exclusivamente con fines estadísticos anónimos. Sin una requerimiento, el cumplimiento voluntario por parte de su proveedor de servicios de Internet, o los registros adicionales de un tercero, la información almacenada o recuperada sólo para este propósito no se puede utilizar para identificarlo.
Marketing
El almacenamiento o acceso técnico es necesario para crear perfiles de usuario para enviar publicidad, o para rastrear al usuario en un sitio web o en varios sitios web con fines de marketing similares.
Administrar opciones Gestionar los servicios Gestionar proveedores Leer más sobre estos propósitos
Preferencias
{title} {title} {title}