miércoles, 24 de junio de 2015

Mapa hipsométrico en QGIS.

En esta entrada vamos a detallar cómo elaborar un mapa hipsométrico con QGIS. Aunque ya vimos por encima algunas operaciones que podemos hacer con los modelos de relieve en esta entrada, hoy vamos a explicar con todo detalle los pasos para convertir un relieve en un bonito mapa coloreado por alturas. Un mapa hipsométrico es eso, un mapa del relieve que, conectando curvas de nivel de la misma altura, representa los cambios de altitud con una gama de colores predeterminada. Como siempre una imagen vale más que mil palabras:
Este es el mapa hipsométrico aproximado que vamos a elaborar en QGIS.
Lo primero que necesitamos es el archivo de relieve de la zona que queremos representar. En este caso vamos a hacerlo con el MDT200 de la provincia de León, disponible como casi siempre en el Centro de Descargas del CNIG. Dependiendo de la escala del mapa a elaborar podemos elegir unos DEM con mayor o menor resolución. Una vez descargado lo descomprimimos y abrimos el archivo MDT200-LEON-H30.asc que contiene en QGIS. Por defecto ya sabemos que QGIS representa los archivos de relieve en escala de grises:
MDT200 de la provincia de León abierto en QGIS.
El siguiente paso es extraer un mapa de sombras (hillshade) a partir del relieve, que será el que luego nos proporcione la sensación de 3D. Desde el menú Raster procedemos según la siguiente secuencia:
En Capa de Altitud (naranja) debe estar seleccionado el MDT sobre el que vamos a trabajar. En Capa de Salida (amarillo) le damos un nombre y una ubicación al mapa de sombras que vamos a crear (yo le he llamado "sombras"). Dejamos el formato de salida en GeoTIFF, el Factor Z en 1, marcada la casilla de que añada el resultado al proyecto.
Las opciones de iluminación (en verde) hacen referencia a la posición del sol: un Azimuth de 300 grados significa que el sol está posicionado en el Noroeste (0 sería el Norte, 90 el Este, 180 el Sur y 270 el Oeste). El ángulo vertical es la elevación del sol: 0 grados sería el horizonte y 90 la posición cenital. Modificar estos parámetros afecta muy mucho al aspecto de nuestro mapa de sombras como podéis comprobar haciendo varios intentos; para nuestro artículo dejamos todo por defecto y aceptamos. En pocos segundos nuestro mapa de sombras se crea y se añade a la lista de capas de QGIS.
Mapa de sombras a partir del MDT200 creado y añadido a la lista de capas del proyecto.
Ahora vamos a aplicar una gama de colores al MDT para que represente el relieve con el degradado de colores deseado. Pasamos la capa sombras al fondo de forma que la capa del MDT quede encima y sea visible. Doble click (o botón derecho/Propiedades) sobre la capa MDT200.
Seleccionamos el apartado Estilo de la capa, y cambiamos el Tipo de renderizador a Unibanda pseudocolor. En la pestaña disponible de rampas de color seleccionamos aquella con los tonos que más nos gusten para representar el terreno. Si ninguna nos convence escogemos "Nueva rampa de color..." para personalizarla.
Aquí debo hacer un inciso. Es más que probable que ninguna de las rampas de color disponibles sea de nuestro completo gusto para representar bien la gama de colores clásica de un relieve de alturas. Tenemos dos opciones: o crear la rampa nosotros mismos....
Esquema para la creación de nuestra propia rampa de color.
... o escoger una de las ya hechas a modo de plantilla por otros usuarios. De nuevo partimos de seleccionar "Nueva rampa de color..." en la pestaña desplegable.
Esquema para la selección de una rampa de color de entre las disponibles.
Ahora, tanto la rampa de color hecha por nosotros (relieve) como la rampa de color escogida de las plantillas (elevation) están disponibles en la pestaña selectora de rampas de colores dentro de las propiedades de capa.
Esto es muy importante para un buen resultado, pues todos asociamos a estas alturas un buen degradado por colores del relieve con unos patrones más o menos estandarizados (verdes o azules para bajas altitudes, pasando por amarillos y naranjas para zonas de más altura, y terminando con marrones o incluso blanco para las zonas más altas). De un buen degradado depende la impresión final del mapa. Con nuestra rampa de color a medida, continuamos.
Con la rampa de color elevation seleccionada y sin tocar nada más pulsamos Clasificar. La rampa de colores se distribuye en seis zonas cubriendo el rango desde la altura mínima hasta la máxima (en la zona naranja están esos datos). Sin tocar nada más podemos darle al botón Aplicar de la ventana para ir observando el efecto.
Obviamente son muchos los parámetros que podemos modificar en esta ventana y sólo la experiencia y las pruebas os harán dar con el resultado a vuestro gusto. Recordad que el botón Aplicar es muy útil para actualizar e ir viendo los cambios sin salirnos de la ventana. Nosotros lo hemos hecho según vemos en la siguiente captura (entre otras cosas porque el rango de alturas está mal y nuestro MDT tiene zonas de hasta 2500 metros):
Hemos seleccionado "Discreto" en interpolación de color (así las alturas superiores que no hemos cubierto con nuestro rango -más de 2400 metros- las deja en blanco, lo que nos gusta). En el Modo -zona naranja- seleccionamos Intervalo igual, modificamos el rango de alturas de 0 a 2400 y le decimos que nos haga 13 clases (o intervalos), de esta forma al darle a Clasificar nos genera 13 intervalos de 200 metros exactos que es lo que queríamos. Aplicamos y de fondo se ve el cambio que sufre el MDT.
Probad y probad observando los cambios con el botón Aplicar. Antes de salirnos de la ventana de Propiedades de la capa MDT retocamos su transparencia, pues sino ocultaría por completo el relieve sombreado y no tendría sentido quedándonos un mapa plano.
En la sección Transparencia de las Propiedades de Capa la colocamos en 50%. Aplicamos y ya vemos de fondo el resultado.
Cuando todo esté a nuestro gusto (rampa de color y transparencia) aceptamos todos los cambios y saldremos de la ventana de Propiedades de Capa quedando nuestro mapa correctamente actualizado. Un añadido de los cuerpos de agua (ríos, lagunas y embalses), de la línea de perímetro provincial y de algunas de las poblaciones más importantes que siempre ayudan a la ubicación para que el mapa quede más redondo (sin enmascarar el motivo principal que siempre es el relieve)... Un poco de trabajo en el diseñador de impresión.... Y ya tenemos nuestro mapa listo, directo a nuestra sección Digimapas que es donde colocamos todas nuestras prácticas y donde podréis descargarlo.
Encantados y orgullosos de nuestro resultado final: una preciosidad de relieve que muestra a la perfección las diferentes unidades geográficas leonesas según su relieve (La Montaña, La Ribera, El Páramo, El Bierzo).
La verdad es que me lo he pasado en grande haciendo este mapa hipsométrico; creo que es uno de los trabajos bonitos que los novatos en cartografía podemos disfrutar de verdad. Así que me he decidido a hacer un vídeo del proceso básico hipsométrico, por si con tanta captura de imagen y tanta charla mía no ha quedado muy claro. Lo tenéis en la sección de Videotutoriales y espero que os sea de ayuda.
Saludos!!

9 comentarios:

  1. Yo tambien le estoy metiendo mano a los mapas hipsometricos, pero con ArcGis. En este tema hay mas carnaza de la que parece. Pero bueno....dicen que con paciencia y saliva un elefante se la metio a una hormiga......

    ResponderEliminar
  2. Si no lo he leido ò interpretado mal, mañana viernes sale la version 2.10 de Qgis.

    ResponderEliminar
  3. Buenas Javier,

    Un mapa muy chulo, una vez más enhorabuena.

    Siguiendo tus pasos he creado mi propio mapa hipsométrico, al que además he añadido algunas capas vectoriales con ríos, edificios, etc., pero me ha surgido la siguiente duda, aunque primero te pongo en contexto, quiero utilizar el mapa que estoy creando para subirlo a una web y me encuentro el problema que lo que se ve en pantalla es el área del DEM entero. Lo que me gustaría es saber como "cortar" un DEM en QGIS para que sólo muestre el área que yo especifique mediante un polígono, pero no sólo el DEM, sino que los ficheros vectoriales "Shapefiles" que cargue, no muestren datos fuera del área especificada.

    No se si me he explicado correctamente, pero la idea es rechazar tanto del DEM como del resto de capas, todo aquello que quede fuera de un área que yo especifique.

    Muchísimas gracias.

    ResponderEliminar
    Respuestas
    1. Hola otra vez,
      Trasteando dentro de las opciones de QGIS y con un poquito de ayuda de San Google, encontré la opción Clipper. Esta opción me ha permitido cortar sin problemas la capa raster, pero la capa vectorial no?
      Por lo que mi nuevo planteaminto sería, ¿existe alguna forma de recortar ambas capas?
      Muchas gracias.

      Eliminar
    2. Al fin dí con la opción, aunque lo he tenido que hacer por pasos, es decir, primero recorté la capa raster y luego, dentro de las opciones de capas vectoriales, dí con la de cortar este tipo de capas. De todos modos desconozco si existe una opción para cortar todas las capas a la vez.
      Un saludo.

      Eliminar
    3. Yo tampoco conozco otra opción para recortar el lienzo del mapa como tu querías que el Clipper en modo máscara (con el polígono a recortar) para los raster y el modo cortar para los vectoriales. Desconozco también si puede hacerse todo de un solo golpe. Aunque si lo único que se quiere es una imagen sencilla para web, sin necesidad de georeferenciación ni nada, siempre se puede sacar de QGIS la imagen tal cual y recortarla con cualquier editor de imágenes. Gracias por comentar y compartir Juan Carlos. Saludos!

      Eliminar
  4. Hola muy bueno el mapa. Sabes como hacerlo en un polígono que delimita una cuenca? Porque ya hice el mapa, y tengo un polígono de una cuenca. Quiero extraerlo con la forma de la cuenca. Gracias.

    ResponderEliminar
    Respuestas
    1. Creo que es lo mismo que quiere Juan Carlos. Gracias.

      Eliminar
    2. Como se dice arriba se puede cortar el raster con la forma de ese polígono de cuenca usando Clipper. Y si no está fusionado con los vectoriales cortando individualmente cada capa. Sigo sin saber si hay alguna forma de cortar todo a la vez. Saludos!

      Eliminar