library(rasterVis)
library(raster)
library(rgl)
library(rgdal)
library(elevatr)
library(sf)
library(tidyverse)
library(mapview)
(munic <- st_read("C:/Users/LUISA CARRION/Downloads/76_VALLE_DEL_CAUCA/ADMINISTRATIVO/MGN_MPIO_POLITICO.shp"))
elevation <- get_elev_raster(munic, z = 10)
if (require(rgdal)) {
rf <- writeRaster(elevation, filename=file.path("/Users/LUISA CARRION/Downloads/76_VALLE_DEL_CAUCA/ADMINISTRATIVO/valle_dem_z10.tif"), format="GTiff", overwrite=TRUE)
}
elevation
class : RasterLayer
dimensions : 4095, 3592, 14709240 (nrow, ncol, ncell)
resolution : 0.0006852919, 0.0006852919 (x, y)
extent : -77.69531, -75.23374, 2.459737, 5.266008 (xmin, xmax, ymin, ymax)
crs : +proj=longlat +datum=WGS84 +no_defs
source : C:/Users/LUISA CARRION/AppData/Local/Temp/RtmpQBuZ5Y/file5fc4cb2b22.tif
names : file5fc4cb2b22
values : -32768, 32767 (min, max)
munic_sp <- as(munic, "Spatial")
plot(elevation, main="This the downloaded DEM [meters]")
plot(munic_sp,col="NA",border="black", add=TRUE)
text(coordinates(munic_sp), labels=as.character(munic$MPIO_CNMBR),
col="black", cex=0.20)

elev_crop = crop(elevation, munic_sp)
plot(elev_crop, main="Cropped digital elevation model")
plot(munic_sp, add=TRUE)
text(coordinates(munic_sp), labels=as.character(munic_sp$MPIO_CNMBR), cex=0.2)

elev_crop
class : RasterLayer
dimensions : 2854, 2689, 7674406 (nrow, ncol, ncell)
resolution : 0.0006852919, 0.0006852919 (x, y)
extent : -77.55003, -75.70728, 3.091577, 5.0474 (xmin, xmax, ymin, ymax)
crs : +proj=longlat +datum=WGS84 +no_defs
source : memory
names : file29182d35f46
values : -1393, 4574 (min, max)
crs(elev_crop)
CRS arguments: +proj=longlat +datum=WGS84 +no_defs
library(sp)
spatialref <- CRS(SRS_string="EPSG:32618")
pr3 <- projectExtent(elev_crop, crs=spatialref)
res(pr3) <- 180
rep_elev <- projectRaster(elev_crop, pr3)
rep_elev
class : RasterLayer
dimensions : 1204, 1139, 1371356 (nrow, ncol, ncell)
resolution : 180, 180 (x, y)
extent : 216562, 421582, 341737.7, 558457.7 (xmin, xmax, ymin, ymax)
crs : +proj=utm +zone=18 +datum=WGS84 +units=m +no_defs
source : memory
names : file5fc4cb2b22
values : -1392.295, 4552.94 (min, max)
(rep_munic = spTransform(munic_sp,spatialref))
class : SpatialPolygonsDataFrame
features : 42
extent : 216628.4, 421558.5, 341813.7, 558001.9 (xmin, xmax, ymin, ymax)
crs : +proj=utm +zone=18 +datum=WGS84 +units=m +no_defs
variables : 9
names : DPTO_CCDGO, MPIO_CCDGO, MPIO_CNMBR, MPIO_CRSLC, MPIO_NAREA, MPIO_NANO, DPTO_CNMBR, Shape_Leng, Shape_Area
min values : 76, 76001, ALCALÁ, 1536, 41.86090736, 2017, VALLE DEL CAUCA, 0.453826056161, 0.00340901158098
max values : 76, 76895, ZARZAL, Ordenanza 9 de Diciembre 1954, 6292.50083741, 2017, VALLE DEL CAUCA, 6.59527269127, 0.510778519244
plot(rep_elev, main="DEM de Valle del Cauca")
plot(rep_munic, lwd=0.5, add=TRUE)
text(coordinates(rep_munic), labels=as.character(rep_munic$MPIO_CNMBR), cex=0.2)

hist(rep_elev)

promedio <- cellStats(rep_elev, 'mean')
minimo <- cellStats(rep_elev, 'min')
maximo <- cellStats(rep_elev, 'max')
desviacion <- cellStats(rep_elev, 'sd')
metricas <- c('mean', 'min', 'max', 'std')
valores <- c(promedio, minimo, maximo, desviacion)
(df_estadisticas <- data.frame(metricas, valores))
slope = terrain(rep_elev,opt='slope', unit='degrees')
aspect = terrain(rep_elev,opt='aspect',unit='degrees')
hill = hillShade(slope,aspect,40,315)
plot(rep_elev,main="DEM for Valle municipalities [meters]", col=heat.colors(25,alpha=0.8))
plot(rep_munic, add=TRUE, lwd=0.5)
text(coordinates(rep_munic), labels=as.character(rep_munic$MPIO_CNMBR), cex=0.2)

plot(slope,main="Pendiente para los municipios de Valle [grados]", col=cm.colors(6,alpha=0.6))
plot(rep_munic, add=TRUE, lwd=0.5)
text(coordinates(rep_munic), labels=as.character(rep_munic$MPIO_CNMBR), cex=0.2)

plot(aspect,main="Aspect for several municipalities [degrees]", col=rainbow(10,alpha=0.7))
plot(rep_munic, add=TRUE, lwd=0.5)
text(coordinates(rep_munic), labels=as.character(rep_munic$MPIO_CNMBR), cex=0.2)

plot(hill,
col=grey(1:100/100),
legend=FALSE,
main="DEM for Valle municipalities [m]",
axes=FALSE)
plot(rep_elev,
axes=FALSE,
col=terrain.colors(12, alpha=0.6), add=TRUE)
plot(rep_munic, add=TRUE, lwd=0.5)
text(coordinates(rep_munic), labels=as.character(rep_munic$MPIO_CNMBR), cex=0.2)

LS0tDQp0aXRsZTogIlF1aW50byBjdWFkZXJubzogREVNIGRlIFZhbGxlIGRlbCBDYXVjYSINCm91dHB1dDogaHRtbF9ub3RlYm9vaw0KLS0tDQoNCmBgYHtyfQ0KbGlicmFyeShyYXN0ZXJWaXMpDQpsaWJyYXJ5KHJhc3RlcikNCmxpYnJhcnkocmdsKQ0KbGlicmFyeShyZ2RhbCkNCmxpYnJhcnkoZWxldmF0cikNCmxpYnJhcnkoc2YpDQpsaWJyYXJ5KHRpZHl2ZXJzZSkNCmxpYnJhcnkobWFwdmlldykNCg0KYGBgDQoNCmBgYHtyfQ0KKG11bmljIDwtICBzdF9yZWFkKCJDOi9Vc2Vycy9MVUlTQSBDQVJSSU9OL0Rvd25sb2Fkcy83Nl9WQUxMRV9ERUxfQ0FVQ0EvQURNSU5JU1RSQVRJVk8vTUdOX01QSU9fUE9MSVRJQ08uc2hwIikpDQpgYGANCg0KYGBge3J9DQplbGV2YXRpb24gPC0gZ2V0X2VsZXZfcmFzdGVyKG11bmljLCB6ID0gMTApDQpgYGANCg0KYGBge3J9DQppZiAocmVxdWlyZShyZ2RhbCkpIHsNCiByZiA8LSB3cml0ZVJhc3RlcihlbGV2YXRpb24sIGZpbGVuYW1lPWZpbGUucGF0aCgiL1VzZXJzL0xVSVNBIENBUlJJT04vRG93bmxvYWRzLzc2X1ZBTExFX0RFTF9DQVVDQS9BRE1JTklTVFJBVElWTy92YWxsZV9kZW1fejEwLnRpZiIpLCBmb3JtYXQ9IkdUaWZmIiwgb3ZlcndyaXRlPVRSVUUpDQp9DQpgYGANCg0KYGBge3J9DQplbGV2YXRpb24NCmBgYA0KDQpgYGB7cn0NCm11bmljX3NwIDwtIGFzKG11bmljLCAiU3BhdGlhbCIpDQpgYGANCg0KDQpgYGB7cn0NCnBsb3QoZWxldmF0aW9uLCBtYWluPSJUaGlzIHRoZSBkb3dubG9hZGVkIERFTSBbbWV0ZXJzXSIpDQpwbG90KG11bmljX3NwLGNvbD0iTkEiLGJvcmRlcj0iYmxhY2siLCBhZGQ9VFJVRSkNCnRleHQoY29vcmRpbmF0ZXMobXVuaWNfc3ApLCBsYWJlbHM9YXMuY2hhcmFjdGVyKG11bmljJE1QSU9fQ05NQlIpLCANCiAgICAgY29sPSJibGFjayIsIGNleD0wLjIwKQ0KYGBgDQoNCmBgYHtyfQ0KZWxldl9jcm9wID0gY3JvcChlbGV2YXRpb24sIG11bmljX3NwKQ0KcGxvdChlbGV2X2Nyb3AsIG1haW49IkNyb3BwZWQgZGlnaXRhbCBlbGV2YXRpb24gbW9kZWwiKQ0KcGxvdChtdW5pY19zcCwgYWRkPVRSVUUpDQp0ZXh0KGNvb3JkaW5hdGVzKG11bmljX3NwKSwgbGFiZWxzPWFzLmNoYXJhY3RlcihtdW5pY19zcCRNUElPX0NOTUJSKSwgY2V4PTAuMikNCmBgYA0KDQpgYGB7cn0NCmVsZXZfY3JvcA0KYGBgDQoNCg0KYGBge3J9DQpjcnMoZWxldl9jcm9wKQ0KYGBgDQoNCmBgYHtyfQ0KbGlicmFyeShzcCkNCnNwYXRpYWxyZWYgPC0gQ1JTKFNSU19zdHJpbmc9IkVQU0c6MzI2MTgiKQ0KYGBgDQoNCmBgYHtyfQ0KcHIzIDwtIHByb2plY3RFeHRlbnQoZWxldl9jcm9wLCBjcnM9c3BhdGlhbHJlZikNCg0KcmVzKHByMykgPC0gMTgwDQoNCnJlcF9lbGV2IDwtIHByb2plY3RSYXN0ZXIoZWxldl9jcm9wLCBwcjMpDQpgYGANCg0KDQpgYGB7cn0NCnJlcF9lbGV2DQpgYGANCg0KYGBge3J9DQoocmVwX211bmljID0gc3BUcmFuc2Zvcm0obXVuaWNfc3Asc3BhdGlhbHJlZikpDQpgYGANCg0KYGBge3J9DQpwbG90KHJlcF9lbGV2LCBtYWluPSJERU0gZGUgVmFsbGUgZGVsIENhdWNhIikNCnBsb3QocmVwX211bmljLCBsd2Q9MC41LCBhZGQ9VFJVRSkNCnRleHQoY29vcmRpbmF0ZXMocmVwX211bmljKSwgbGFiZWxzPWFzLmNoYXJhY3RlcihyZXBfbXVuaWMkTVBJT19DTk1CUiksIGNleD0wLjIpDQpgYGANCg0KDQoNCmBgYHtyfQ0KaGlzdChyZXBfZWxldikNCmBgYA0KDQpgYGB7cn0NCnByb21lZGlvIDwtIGNlbGxTdGF0cyhyZXBfZWxldiwgJ21lYW4nKQ0KbWluaW1vIDwtIGNlbGxTdGF0cyhyZXBfZWxldiwgJ21pbicpDQptYXhpbW8gPC0gY2VsbFN0YXRzKHJlcF9lbGV2LCAnbWF4JykNCmRlc3ZpYWNpb24gIDwtIGNlbGxTdGF0cyhyZXBfZWxldiwgJ3NkJykNCmBgYA0KDQoNCmBgYHtyfQ0KbWV0cmljYXMgPC0gYygnbWVhbicsICdtaW4nLCAnbWF4JywgJ3N0ZCcpDQp2YWxvcmVzIDwtIGMocHJvbWVkaW8sIG1pbmltbywgbWF4aW1vLCBkZXN2aWFjaW9uKQ0KYGBgDQoNCg0KYGBge3J9DQooZGZfZXN0YWRpc3RpY2FzIDwtIGRhdGEuZnJhbWUobWV0cmljYXMsIHZhbG9yZXMpKQ0KYGBgDQoNCmBgYHtyfQ0Kc2xvcGUgPSB0ZXJyYWluKHJlcF9lbGV2LG9wdD0nc2xvcGUnLCB1bml0PSdkZWdyZWVzJykNCmFzcGVjdCA9IHRlcnJhaW4ocmVwX2VsZXYsb3B0PSdhc3BlY3QnLHVuaXQ9J2RlZ3JlZXMnKQ0KaGlsbCA9IGhpbGxTaGFkZShzbG9wZSxhc3BlY3QsNDAsMzE1KQ0KYGBgDQoNCmBgYHtyfQ0KcGxvdChyZXBfZWxldixtYWluPSJERU0gZm9yIFZhbGxlIG11bmljaXBhbGl0aWVzIFttZXRlcnNdIiwgY29sPWhlYXQuY29sb3JzKDI1LGFscGhhPTAuOCkpDQpwbG90KHJlcF9tdW5pYywgYWRkPVRSVUUsIGx3ZD0wLjUpDQp0ZXh0KGNvb3JkaW5hdGVzKHJlcF9tdW5pYyksIGxhYmVscz1hcy5jaGFyYWN0ZXIocmVwX211bmljJE1QSU9fQ05NQlIpLCBjZXg9MC4yKQ0KYGBgDQoNCmBgYHtyfQ0KcGxvdChzbG9wZSxtYWluPSJQZW5kaWVudGUgcGFyYSBsb3MgbXVuaWNpcGlvcyBkZSBWYWxsZSBbZ3JhZG9zXSIsIGNvbD1jbS5jb2xvcnMoNixhbHBoYT0wLjYpKQ0KcGxvdChyZXBfbXVuaWMsIGFkZD1UUlVFLCBsd2Q9MC41KQ0KdGV4dChjb29yZGluYXRlcyhyZXBfbXVuaWMpLCBsYWJlbHM9YXMuY2hhcmFjdGVyKHJlcF9tdW5pYyRNUElPX0NOTUJSKSwgY2V4PTAuMikNCmBgYA0KDQpgYGB7cn0NCnBsb3QoYXNwZWN0LG1haW49IkFzcGVjdCBmb3Igc2V2ZXJhbCBtdW5pY2lwYWxpdGllcyBbZGVncmVlc10iLCBjb2w9cmFpbmJvdygxMCxhbHBoYT0wLjcpKQ0KcGxvdChyZXBfbXVuaWMsIGFkZD1UUlVFLCBsd2Q9MC41KQ0KdGV4dChjb29yZGluYXRlcyhyZXBfbXVuaWMpLCBsYWJlbHM9YXMuY2hhcmFjdGVyKHJlcF9tdW5pYyRNUElPX0NOTUJSKSwgY2V4PTAuMikNCmBgYA0KDQpgYGB7cn0NCnBsb3QoaGlsbCwNCiAgICAgICAgY29sPWdyZXkoMToxMDAvMTAwKSwgIA0KICAgICAgICBsZWdlbmQ9RkFMU0UsICAgICAgICAgDQogICAgICAgIG1haW49IkRFTSBmb3IgVmFsbGUgbXVuaWNpcGFsaXRpZXMgW21dIiwNCiAgICAgICAgYXhlcz1GQUxTRSkgDQoNCg0KcGxvdChyZXBfZWxldiwgDQogICAgICAgIGF4ZXM9RkFMU0UsDQogICAgICAgIGNvbD10ZXJyYWluLmNvbG9ycygxMiwgYWxwaGE9MC42KSwgYWRkPVRSVUUpDQoNCnBsb3QocmVwX211bmljLCBhZGQ9VFJVRSwgbHdkPTAuNSkNCnRleHQoY29vcmRpbmF0ZXMocmVwX211bmljKSwgbGFiZWxzPWFzLmNoYXJhY3RlcihyZXBfbXVuaWMkTVBJT19DTk1CUiksIGNleD0wLjIpDQpgYGANCg0K