Creación de un mapa de cuenca fluvial coloreado (QGIS3)¶
En este tutorial, aprenderemos el flujo de trabajo de QGIS para crear mapas fluviales artísticos de tu propio país o región utilizando datos hidrológicos de libre acceso.
Nota
Este tutorial está inspirado en los hermosos mapas producidos por Grasshopper Geography. Yo tengo uno de sus grabados y tú también puedes apoyar su trabajo comprando uno de sus mapas en su tienda en-línea <https://www.etsy.com/shop/GrasshopperGeography>`_.
Visión general de la tarea¶
En este tutorial, tomaremos capas de datos de cuencas y ríos de HydroSHEDS y crearemos un mapa de cuencas para los ríos de la India.
Otras competencias que aprenderá¶
Cómo asignar proyección a una capa vectorial con proyección incorrecta o ausente.
Cómo añadir varias capas en un mismo GeoPackage.
Cómo añadir una insignia “Hecho con QGIS” a su mapa.
Obtener los datos¶
HydroSHEDS proporciona conjuntos de datos hidrológicos globales adecuados para aplicaciones regionales y globales. Las capas de datos se derivan de MDE condicionados hidrológicamente a partir de SRTM.
Límites de las cuencas¶
HydroBasins proporciona límites poligonales de cuencas para diferentes continentes. Los límites son jerárquicos: cada cuenca de Nivel N se subdivide a su vez en cuencas más pequeñas de Nivel N+1. Para este tutorial, utilizaremos los límites de cuenca del Nivel 6. Puede utilizar un nivel diferente en función de sus necesidades. Puede utilizar un nivel diferente en función de su región y del tipo de mapa que desee crear. Visite la página HydroBASINS y descargue el archivo zip correspondiente a su región.
Nota
Los límites de cuenca de HydroSHEDS se derivan de los datos SRTM, que en este momento tienen más de 20 años. Los límites de las cuencas pueden no coincidir con los límites oficiales de las cuencas de su región. Puede sustituir los datos de HydroBasins por polígonos de fuentes oficiales cuando estén disponibles.
Red fluvial¶
HydroRIVERS proporciona un archivo shape línea que representa la red fluvial. Visite la página HydroRIVERS y descargue el archivo zip correspondiente a su región de interés.
Límites administrativos¶
Recortaremos los datos de HydroSHEDS a los límites de la región elegida. En este tutorial, queremos crear un mapa de cuenca fluvial de la India, por lo que obtendremos el archivo shape de límites de Survey of India. Visite la página Outline Maps of India y descargue el formato vectorial de límites internacionales de la India. Si necesita los límites administrativos de otros países o estados, puede obtenerlos de GADM o geoBoundaries.
Una vez descargados todos los archivos, descomprímalos y cópielos en una carpeta. Ahora debería tener 3 archivos shape: hybas_as_lev06_v1c.shp
, HydroRIVERS_v10_as.shp
y admin boundaries polymap15m_area.shp
.
Fuentes de datos: [HYDROSHEDS], [SOI]
Procedimiento¶
Abra QGIS y localice los archivos descargados en el Navegador de QGIS. Arrastre y suelte
hybas_as_lev06_v1c.shp
yHydroRIVERS_v10_as.shp
al lienzo.
Localice el archivo shape de límites administrativos
polymap15m_area.shp
y arrástrelo y suéltelo en el lienzo.
Las capas de datos HydroSHEDS tienen algunos objetos espaciales con geometrías no válidas. Vamos a arreglarlas procediendo más adelante. Abra la caja de herramientas de procesado desde
. Busque y localice la herramienta . Haga doble clic para ejecutarla.
Nota
Puede consultar el tutorial Manejar Geometrías No Válidas (QGIS3) para obtener más información sobre las causas y soluciones de las geometrías no válidas.
Seleccione
hybas_as_lev06_v1c
como Capa de entrada`. Haga clic en el botón … situado junto a Geometrías corregidas y seleccione Guardar en GeoPackage….
Busque la ubicación donde desea guardar los datos de salida e introduzca el nombre
data.gpkg
. Haga clic en Guardar. Se le pedirá que introduzca un Nombre de capa`. Introduzcabasins_fixed
. Haga clic en Aceptar. A continuación, haga clic en Ejecutar para ejecutar el algoritmo y generar la capa de salida.
Repita el paso para la capa
HydroRIVERS_v10_as
. Seleccione el mismo GeoPackagedata.gpkg
que se creó en el paso anterior. No se preocupe si recibe un mensaje indicando que el archivo se sobrescribirá. QGIS no sobrescribirá el archivo, sino que añadirá una nueva capa al mismo GeoPaquete. Esta vez utilicerivers_fixed
como Nombre de la capa.
La capa
polymap15m_area
viene con una proyección que no es reconocida por QGIS. Vamos a asignar una proyección conocida a esta capa. Busque y localice la herramienta y haga doble clic para abrirla.
Nota
Recuerde que la herramienta Asignar proyección no reproyecta la capa sino que simplemente añade la información de proyección correcta a una capa georreferenciada existente con proyección ausente o incorrecta. Utilice la herramienta Reproyectar capa si desea cambiar el SRC de una capa.
Seleccione
polymap15m_area
como Capa de entrada. Haga clic en el botón Seleccionar SRC y busque la proyecciónEPSG:7755 - WGS 84 / India NSF LCC
y selecciónela. Haga clic en el botón … situado junto a SRC asignado` y seleccione Guardar en GeoPackage….
Seleccione el mismo GeoPackage
data.gpkg
e introduzca el nombre de la capaadmin_boundary_fixed
. Haga clic en Ejecutar.
Ahora tendrá 3 nuevas capas
basins_fixed
,rivers_fixed
yadmin_boundary_fixed
cargadas en el panel Capas` de QGIS. Mantenga pulsada la tecla Mayús y seleccione todas las capas restantes. Haga clic con el botón derecho y seleccione Quitar capa….
Ahora recortaremos las capas de cuencas y ríos al límite administrativo. Busque y localice la herramienta
de la Caja de herramientas de procesos. Haga doble clic para abrirla.
Seleccione
basins_fixed
como Capa de entrada yadmin_boundary_fixed
como Capa de superposición`. Guarde el resultado en el mismo GeoPackagedata.gpkg
que la capabasins_clipped
. Haga clic en Ejecutar.
Una vez finalizado el procesamiento, repite el proceso con la capa
rivers_fixed
como Capa de entrada`. Guarde el resultado en el mismo geopackagedata.gpkg
que la caparivers_clipped
. Haga clic en Ejecutar.
Ahora tendrá 2 nuevas capas
basins_clipped
yrivers_clipped
, así como la capaadmin_boundary_fixed
cargada en el panel Capas en QGIS. Mantenga pulsada la tecla Mayús y seleccione todas las capas restantes. Haga clic con el botón derecho y seleccione Quitar capa….
Antes de continuar, vamos a guardar el proyecto. QGIS permite guardar un proyecto dentro de un GeoPackage - lo que resulta muy cómodo para evitar la gestión de archivos adicionales. Vaya a
.
En el cuadro de diálogo Guardar proyecto en GeoPackage, haga clic en el botón … situado junto a Conexión y busque el archivo
data.gpkg
existente. Introduzca el nombrerivers_basin_map
como nombre del Proyecto. Haga clic en Aceptar.
Una vez guardado, puede expandir
data.gpkg
en el panel Navegador y ver que el proyecto QGIS está ahora guardado dentro del Geopackage. Los usuarios de este GeoPackage pueden ahora abrir el proyecto directamente desde el GeoPackage.
Para crear nuestro mapa coloreado, necesitamos colorear todas las cuencas de forma que ninguna cuenca adyacente tenga el mismo color. QGIS tiene una herramienta para hacer precisamente eso. Abra la herramienta
de la Caja de Herramientas de Procesos.
Seleccione
basins_clipped
como Capa de entrada. Deje las demás opciones en sus valores por defecto. Guarde el resultado en el mismo GeoPackagedata.gpkg
que la capabasins_with_color
. Haga clic en Ejecutar.
Una vez finalizado el proceso, se cargará una nueva capa
basins_with_color
en el panel Capas. Haga clic con el botón derecho en la capa y seleccione Abrir tabla de atributos. Observará que la capa tiene un nuevo atributo llamadocolor_id
con un valor entero. Al asignar un color único a cada valor entero, la capa se coloreará de forma topolocal.
Queremos transferir el identificador de color de la cuenca a todos los ríos que contiene. Abra la herramienta
de la Caja de Herramientas de Procesos.
Aquí queremos seleccionar
rivers_clipped
como capa para Join to features in ybasins_with_color
como capa para Comparando con`. En la sección Campos a añadir, haga clic en el botón :guilabel: … y seleccione el campocolor_id
. Guarde el resultado en el geopackagedata.gpkg
como caparivers_with_color
. Haga clic en Ejecutar.
Una vez finalizado el procesado, se cargará una nueva capa
rivers_with_color
en el panel Capas. Ahora es el momento de aplicar la simbología. Seleccione la capaadmin_boundary_fixed
y haga clic en el botón Abrir panel de estilo de capa en el panel :guilabel: Capas`. Cambie el color a negro.
A continuación, seleccione la capa
rivers_with_color
y seleccione el renderizadorCategorizado
.
Seleccione
color_id
como Valor y haga clic en Clasificar. Verá que a los ríos de diferentes cuencas se les asigna un color diferente.
Nota
Si no está satisfecho con los colores elegidos al azar, puede hacer clic en el Símbolo de los valores individuales en la lista de abajo y elegir su propio color.
Las líneas predeterminadas son demasiado gruesas para nuestro mapa. Vamos a cambiarlas. Mantenga pulsada la tecla Mayúsculas y seleccione todos los símbolos de la lista. Haga clic en Símbolo para abrir la Configuración de símbolos.
Haga clic en Línea Simple y cambie el ancho del trazo a
0.1
. El mapa se verá mucho mejor ahora.
Podemos mejorar el mapa asignando diferentes anchuras a los ríos en función de su tamaño. La capa
rivers_with_color
tiene un campoORD_STRA
que contiene el valor del Orden de Strahler del río. Cuanto mayor sea el número, mayor será el río. Utilizaremos el Asistente para ayudarnos a utilizar el valor del orden de Strahler para un ancho de trazo apropiado. Haga clic en el botón Anulación definida por datos junto a Ancho de trazo y seleccione Asistente….
En la sección Entrada, seleccione el campo
ORD_STRA
como Fuente con Valores de1
a :guilabel: a6
. En la sección Salida, elija Tamaño desde como0.05
y Hasta como0.2
. El mapa se actualizará dinámicamente a medida que introduzca los valores. Es posible que tengas que ajustar estos valores en función de tu región. Cuando esté satisfecho con el mapa, pulse el botón Atrás.
Observará que el botón Anulación definida por los datos para Ancho de trazo es ahora amarillo, lo que indica que se ha aplicado una anulación activa a este parámetro.
Nuestro mapa de cuenca fluvial coloreado ya está listo. Pongamos este mapa en un diseño para poder exportar una versión de alta resolución con otros elementos del mapa. Vaya a Aceptar.
. Cuando se le pida que introduzca un nombre, déjelo en blanco y haga clic en
En la ventana Composición 1, haga clic con el botón derecho del ratón sobre el lienzo en blanco y seleccione Propiedades de la página….
Elija
A4
como Tamaño. Cambia el color de Fondo a negro.
Vaya a
.
Mantenga pulsado el botón izquierdo del ratón y seleccione una región del lienzo en la que desee colocar el mapa.
Una vez que aparezca el mapa, desplácese hacia abajo en la pestaña Propiedades del elemento y desactive la opción :guilabel: Fondo.
Nota
Si no ve la pestaña Propiedades del elemento o la cierra por accidente, puede recuperarla yendo a en el menú Diseño.
Vamos a ajustar la extensión del mapa. Haga clic en el botón Edición interactiva de la extensión del mapa y utilice el ratón para desplazarse por el mapa. También puede utilizar la rueda de desplazamiento para ajustar el zoom. Si desea un control más preciso del zoom, ajuste manualmente el valor de Escala. Repita el proceso hasta que esté satisfecho con la colocación del mapa.
A continuación añadiremos un logotipo de QGIS al mapa. Vaya a
.
Dibuje un rectángulo donde desee colocar el logotipo. En el cuadro de diálogo Propiedades del elemento, localice el grupo de iconos logos. Seleccione el logotipo
Hecho con QGIS
.
A continuación, vamos a añadir una etiqueta con créditos de datos. Vaya a
. Introduzca el texto para los créditos de datos y ajuste la fuente y la alineación de la etiqueta.
Una vez que esté listo para exportar los resultados, vaya a :menuselección:`Diseño --> Exportar como imagen...`. Busca una carpeta en tu ordenador donde quieras guardar la imagen PNG e introduce el nombre
river_basins.png
.
Elija
300 dpi
como Resolución de exportación y haga clic en Guardar.
Una vez finalizada la exportación, tendrás la imagen final del mapa en la ubicación elegida.
Aquí está la imagen PNG final que creamos utilizando QGIS y conjuntos de datos abiertos.
If you want to give feedback or share your experience with this tutorial, please comment below. (requires GitHub account)