domingo, 27 de marzo de 2016

6.1. Mapa Pendiente.

Mapa de pendientes a partir de un Modelo de Elevación Digital (DEM).

Mapa de pendientes (°) de la región de cuyo elaborado a partir de la grilla GMRT. Incluye datos del IGN: ejidos urbanos (áreas verdes), centros poblados (puntos negros), vías férreas (líneas blancas), límites políticos (líneas negras).

Se explica como recortar una grilla, crear una paleta de colores (cpt) y agregar una escala de color.

En este artículo explico aplicaciones de los mapas de pendientes.
Application of Slope Maps as a Complement of Bathymetry: Example from the SW Atlantic.
Marine Geodesy Vol. 40 , Iss. 1,2017.

Datos:
Los mapas de pendientes se realizan a partir de Modelos de Elevación Digital (DEM) batimétricos-topográficos. En Base de Datos se mencionan distintas fuentes y como descargar los DEM. Para este ejemplo, utilizo la grilla GMRTv3_1.grd descargada del portal GMRT, que es la misma utilizada en ejemplos 5.

Script 1 (pendiente en °)
Script 2 (pendiente en %)

Definir Variables

1. Región: Mapa comprendido entre los meridianos 72° y 64° W y los paralelos 35° y 30°S.

rem    Region: Argentina
    SET    REGION=-72/-64/-35/-30


2. Proyección: Mapa con proyección Mercator de 15 cm de ancho.

rem    Proyeccion Mercator (M)
    SET    PROJ=M15c


Hacer Mapa:

3. Mapa Base: Usamos comandos previos para hacer un mapa que incluya datos del IGN, líneas de costas, escala gráfica, pintar áreas océanos y hacer un marco al mapa explicado en entradas previas. El mapa creado es igual al mapa 5.1 (con el agregado de la escala gráfica, y las red ferroviaria pintada de blanco).

REM    Datos Instituto Geografico Nacional (IGN)
    gmt psxy -R -J -O -K "E:\Facultad\Datos_Geofisicos\IGN\1_GMT\limites_politico_administrativos.gmt" -Wthin >> %OUT% 
    gmt psxy -R -J -O -K "E:\Facultad\Datos_Geofisicos\IGN\1_GMT\003_Red_Ferroviaria.gmt" -Wthin,white -Am >> %OUT%
    gmt psxy -R -J -O -K "E:\Facultad\Datos_Geofisicos\IGN\1_GMT\005_Centros_Poblados.gmt" -Sc0.04 -Gblack >> %OUT%
    gmt psxy -R -J -O -K "E:\Facultad\Datos_Geofisicos\IGN\1_GMT\010_Ejidos_Urbanos.gmt" -Wfaint -Ggreen >> %OUT%  


REM    Dibujar frame
    gmt psbasemap -R -J -O -K -Baf >> %OUT%

rem    Pintar areas húmedas: Oceanos (-S)

    gmt pscoast -R -J -O -K -Df -Sdodgerblue2  >> %OUT%

REM    Dibujar Linea de Costa (W1)

    gmt pscoast -R -J -O -K -Df -W1/faint >> %OUT%

REM    Dibujar Escala en el mapa centrado en -Lg Lon0/Lat0, calculado en meridiano (+c), ancho (+w), elegante(+f), unidad arriba de escala (+l), unidad con los valores (+u). n: Centrado en el 88% del eje X y 7.5% del eje Y.
    gmt psbasemap -R -J -O -K -Ln0.88/0.075+c-32:00+w100k+f+l   >> %OUT%




4. Gradiente: Usamos grdgradient para calcular el gradiente de la superficie del terreno a partir de la grilla topográfica (GMRTv3_1.grd). Con la opción -S creamos una grilla (temp_mag.grd) con la magnitud (o módulo) del vector del gradiente. Con -fg indicamos que la grilla está en coordenadas geográficas (esto es importante para conocer la distancia horizontal para calcular la magnitud del gradiente).

REM    Calcular Grilla con modulo del gradiente
    gmt grdgradient
GMRTv3_1.grd -D -Stemp_mag.grd -R -fg 

5. Pendiente: Utilizamos grdmath para crear una nueva grilla (%CUT%) con la pendiente en ángulos sexagesimales a partir de temp_mag.grd. Para eso, primero calculamos la arco-tangente (ATAN) del módulo del gradiente y luego convertimos el ángulo de radianes a grados (R2D).

Nota: grdmath utiliza la convención Notación polaca inversa.


REM    Convertir modulo del gradiente a pendientes en radianes (ATAN), y luego a grados (R2D)
    gmt grdmath temp_mag.grd ATAN R2D = %CUT%


Más información: Olaya, V. 2014. Sistemas de información Geográfica. Link.

6. Información Grilla: Con grdinfo se obtiene información de la grilla creada (%CUT%). En este ejemplo, nos permite ver el rango de pendientes que contiene la grilla (z_min: 0 z_max: 71.45...) que utilizaremos en el punto siguiente. Con la opción -T se puede utilizar para directamente obtener los valores a usar. Sólo hay que especificar el intervalo (2; ver punto 7).


    grdinfo %CUT%
    grdinfo %CUT% -T2
    pause 

Captura de pantalla con la información de la grilla obtenida a partir de los comandos grdinfo, grinfo -T y pause.

7. Paleta de Color I: Antes de dibujar el mapa, es necesario crear una paleta de colores (cpt) para los distintos valores de pendientes del terreno.
Para este ejemplo utilizamos makecpt para crear una nueva cpt (%color%) a partir del cpt maestro rainbow (-Crainbow) para el rango de 0 a 72° (ver punto 6) con intervalos cada 2° (-T0/72/2) y valores continuos (-Z). Con -I invertimos la progresión de colores del cpt maestro.

REM    Crear Paleta de Colores. Paleta Maestra (-C), Definir rango (-Tmin/max/intervalo), CPT continuo (-Z)
    gmt makecpt -Crainbow -T0/72/2 -Z -I >%color%


8. Imagen: Con grdimage se crea una imagen a partir de la grilla a partir de la grilla "CUT" (punto 5) y con la paleta de colores "color" (punto 6) con el siguiente comando.

REM    Crear Imagen a partir de grilla
    gmt grdimage -R -J -O -K %CUT% -C%color% >> %OUT%


9. Escala de Color I: Con psscale se agrega una escala vertical a partir del cpt previo (-C%color%; punto 7) a la derecha del mapa (-Dx15.5/0) de 11 cm de largo y 0,618 de ancho (+w11/0.618c). La escala tiene anotaciones cada 5° y con la leyenda "Inclinación pendiente (°)".

REM    Agregar escala vertical a partir de CPT (-C). Posición (x,y) +wlargo/ancho. Anotaciones (-Ba). Leyenda (+l).
       gmt psscale -O -K -Dx15.5/0+w11.0/0.618c    -C%color% -B5:"Inclinaci\363n pendiente (\232)": >> %OUT%





10. Paleta de Color II: En la figura previa se ve que la mayoría de las pendientes corresponden a valores menores a 30° (colores rojos a verdes). Por lo tanto, conviene cambiar la cpt original (punto 7) por una que se extienda entre 0 y 30°, con intervalos cada 2° (-T0/30/2). Las pendientes mayores a 30° son pintadas con el color definido por el parámetro Color Background, que por default es negro. (Para el caso contrario, en el que los valores sean menores se utiliza Color_Foreground, que es blanco por default).
Nota: En principio, Color_Foreground y Color_Background definen respectivamente a los colores mayores y menores de los definidos en el cpt. Sin embargo, en este ejemplo estos fueron intercambiados al invertir la progresión de la escala de colores (-I).

gmt makecpt -Crainbow -T0/30/2 -Z -I >%color%

11. Escala de Color II: Agregamos la opción "+ef" para que la escala de color incluya un triángulo en la parte superior con el Color_Foreground (negro). La longitud de la escala de color (11 cm) no tiene en cuenta estos triángulos, por lo que la achico a 10.5 cm.


gmt psscale -O -K -Dx15.5/0+w10.5/0.618c+ef    -C%color% -B5:"Inclinaci\363n pendiente (\232)": >> %OUT%



12. Paleta de Color III: Agregando la opción -D a makecpt se utilizan los colores de los extremos del cpt para pintar las áreas atribuidas por default a Color_background y Color_foreground.

gmt makecpt -Crainbow -T0/30/2 -Z -I -D >%color%




PD: 28-04-2018:
14: Pendientes expresadas en %: Es  necesario modificar 2 comandos. Luego de calcular el módulo del gradiente (paso 4) sólo es necesario multiplicarlo por 100. También se modifica la unidad de la escala de color.

gmt grdmath %CUT% 100 MUL = %CUT%
gmt psscale -O -K -Dx15.5/0+w10.5/0.618c+ef  -C%color% -Ba+l"Inclinaci\363n pendiente (\045)" >> %OUT%


No hay comentarios.:

Publicar un comentario