Introducción
Este es un cuaderno de R Markdown para ilustrar el cálculo de pendiente y aspecto. En matemáticas, la pendiente o gradiente de un plano es un número que describe tanto la dirección como la inclinación del plano. Por otro lado, el aspecto se refiere a la orientación de la pendiente del plano en relación con los puntos cardinales. En resumen, el aspecto es la dirección de la brújula que enfrenta una pendiente.
Creación de Raster
rm(list = ls())
library(raster)
## Loading required package: sp
Vamos a crear un objeto DEM. Tenga en cuenta que es necesario pasar las coordenadas del cuadro delimitador (mínimo y máximo a lo largo de los dos ejes, x e y):
dem = raster(ncol=3, nrow=3, xmn=100, xmx=115, ymn=100, ymx=115)
¿Cuántas celdas componen un DEM?
ncell(dem)
## [1] 9
¿Cuál es la resolución espacial (es decir, el tamaño de celda) de DEM?
res(dem)
## [1] 5 5
Asigne valores de elevación a DEM:
valores = c(50, 45, 50, 30, 30, 30, 8, 10, 10)
(values(dem)= valores)
## [1] 50 45 50 30 30 30 8 10 10
Tracemos el DEM a lo largo de los valores de elevación:
plot(dem, main = "DEM")
text(dem)

Asignemos un sistema de referencia de coordenadas a DEM:
crs(dem) = CRS('+init=epsg:3115')
- ¿Qué significa el código EPSG?
- ¿Dónde se pueden encontrar los códigos EPSG?
- ¿Cuál es el código EPSG para MAGNA Ciudad de Bogotá?
Cálculo de pendiente y aspecto
(slope = terrain(dem, 'slope', unit='degrees', neighbors=8))
## class : RasterLayer
## dimensions : 3, 3, 9 (nrow, ncol, ncell)
## resolution : 5, 5 (x, y)
## extent : 100, 115, 100, 115 (xmin, xmax, ymin, ymax)
## crs : +init=epsg:3115
## source : memory
## names : slope
## values : 75.25766, 75.25766 (min, max)
plot(slope, main = "Pendiente")
text(slope)

(aspecto = terrain(dem, 'aspect', unit='degrees', neighbors=8))
## class : RasterLayer
## dimensions : 3, 3, 9 (nrow, ncol, ncell)
## resolution : 5, 5 (x, y)
## extent : 100, 115, 100, 115 (xmin, xmax, ymin, ymax)
## crs : +init=epsg:3115
## source : memory
## names : aspect
## values : 180.7538, 180.7538 (min, max)
plot(aspecto, main= "Aspecto")
text(aspecto)

Asignación
Vamos a crear un objeto DEM. Tenga en cuenta que es necesario pasar las coordenadas del cuadro delimitador (mínimo y máximo a lo largo de los dos ejes, x e y):
dem = raster(ncol=4, nrow=4, xmn=100, xmx=120, ymn=100, ymx=120)
¿Cuántas celdas componen un DEM?
ncell(dem)
## [1] 16
¿Cuál es la resolución espacial (es decir, el tamaño de celda) de DEM?
res(dem)
## [1] 5 5
Asigne valores de elevación a DEM:
valores = c(50, 45, 50, 48, 30, 29, 30, 29, 10, 9, 9, 10, 25, 23, 19, 21)
(values(dem)= valores)
## [1] 50 45 50 48 30 29 30 29 10 9 9 10 25 23 19 21
Tracemos el DEM a lo largo de los valores de elevación:
plot(dem, main = "DEM")
text(dem)

Asignemos un sistema de referencia de coordenadas a DEM:
crs(dem) = CRS('+init=epsg:3115')
Cálculo de pendiente y aspecto
(slope = terrain(dem, 'slope', unit='degrees', neighbors=8))
## class : RasterLayer
## dimensions : 4, 4, 16 (nrow, ncol, ncell)
## resolution : 5, 5 (x, y)
## extent : 100, 120, 100, 120 (xmin, xmax, ymin, ymax)
## crs : +init=epsg:3115
## source : memory
## names : slope
## values : 36.05503, 75.62313 (min, max)
plot(slope, main = "Pendiente")
text(slope)

(aspecto = terrain(dem, 'aspect', unit='degrees', neighbors=8))
## class : RasterLayer
## dimensions : 4, 4, 16 (nrow, ncol, ncell)
## resolution : 5, 5 (x, y)
## extent : 100, 120, 100, 120 (xmin, xmax, ymin, ymax)
## crs : +init=epsg:3115
## source : memory
## names : aspect
## values : 164.0546, 181.4688 (min, max)
plot(aspecto, main= "Aspecto")
text(aspecto)
