Rangos óptimos para el cultivo de caña:
Temperatura media entre 22.5 y 28 grados centigrados
Precipitación anual entre 1500 y 3500 milímetros
Precipitación mensual entre 125 y 290 milímetros
require(raster)
## Loading required package: raster
## Warning: package 'raster' was built under R version 4.2.3
## Loading required package: sp
require(rgdal)
## Loading required package: rgdal
## Please note that rgdal will be retired during 2023,
## plan transition to sf/stars/terra functions using GDAL and PROJ
## at your earliest convenience.
## See https://r-spatial.org/r/2022/04/12/evolution.html and https://github.com/r-spatial/evolution
## rgdal: version: 1.6-5, (SVN revision 1199)
## Geospatial Data Abstraction Library extensions to R successfully loaded
## Loaded GDAL runtime: GDAL 3.5.2, released 2022/09/02
## Path to GDAL shared files: C:/Users/ADMIN/AppData/Local/R/win-library/4.2/rgdal/gdal
## GDAL binary built with GEOS: TRUE
## Loaded PROJ runtime: Rel. 8.2.1, January 1st, 2022, [PJ_VERSION: 821]
## Path to PROJ shared files: C:/Users/ADMIN/AppData/Local/R/win-library/4.2/rgdal/proj
## PROJ CDN enabled: FALSE
## Linking to sp version:1.6-0
## To mute warnings of possible GDAL/OSR exportToProj4() degradation,
## use options("rgdal_show_exportToProj4_warnings"="none") before loading sp or rgdal.
require(leaflet)
## Loading required package: leaflet
## Warning: package 'leaflet' was built under R version 4.2.3
require(RColorBrewer)
## Loading required package: RColorBrewer
require(rasterVis)
## Loading required package: rasterVis
## Warning: package 'rasterVis' was built under R version 4.2.3
## Loading required package: lattice
# Paises
mundo=shapefile("C:/Users/ADMIN/Desktop/Maestria Ciencia de Datos/SEMESTRE III - 2023.2/Analisis de Inf Geografica y Espacial/M1U2 - Exploracion de Datos Espaciales/Ejercicio Accion M1U2/mundo/Mapa_paises_mundo.shp")
# Temperaturas
archivos1=list.files("C:/Users/ADMIN/Desktop/Maestria Ciencia de Datos/SEMESTRE III - 2023.2/Analisis de Inf Geografica y Espacial/M1U2 - Exploracion de Datos Espaciales/Ejercicio Accion M1U2/wc2.1_10m_tavg",full.names = TRUE)
temperaturas=stack(archivos1)
names(temperaturas)=month.abb
plot(temperaturas)

# Precipitaciones
archivos2=list.files("C:/Users/ADMIN/Desktop/Maestria Ciencia de Datos/SEMESTRE III - 2023.2/Analisis de Inf Geografica y Espacial/M1U2 - Exploracion de Datos Espaciales/Ejercicio Accion M1U2/wc2.1_10m_prec",full.names = TRUE)
precipitacion=stack(archivos2)
names(precipitacion)=month.abb
plot(precipitacion)

# TEMPERATURAS
temp_def= temperaturas>=22.5&temperaturas<=28
plot(temp_def)

temp_optimo=sum(temp_def)
temp_optimo=temp_optimo/12*100
plot(temp_optimo)

# PRECIPITACION
#prec_year_bin_men=precipitacion>=125
#prec_year_bin_may=precipitacion<=290
prec_def= precipitacion>=125&precipitacion<=290
plot(prec_def)

prec_optimo=sum(prec_def)
prec_optimo=prec_optimo/12*100
plot(prec_optimo)

pix_no_optimos_t=which(temp_optimo[]<75)
temp_optimo[pix_no_optimos_t]=NA
plot(temp_optimo)

pix_no_optimos_p=which(prec_optimo[]<75)
prec_optimo[pix_no_optimos_p]=NA
plot(prec_optimo)

siembra_optima = (prec_optimo+temp_optimo)/2
plot(mundo)
plot(siembra_optima,add=T)

# leaflet() %>% addTiles() %>% addRasterImage(siembra_optima,opacity = 0.6)
Se observa que las zonas potenciales para siembra de caña de azúcar
se encuentran en el sur de Colombia, Ecuador, Brasil y algunos países
del centro de África y Asia.
# Extracción de punto Valle del Cauca
require(tmaptools)
## Loading required package: tmaptools
## Warning: package 'tmaptools' was built under R version 4.2.3
# PUNTO 1: LA HERRADURA, NORTE DEL VALLE
Punto1=geocode_OSM(q = "La Herradura Bolivar Valle")
Punto1
## $query
## [1] "La Herradura Bolivar Valle"
##
## $coords
## x y
## -76.214267 4.276026
##
## $bbox
## xmin ymin xmax ymax
## -76.234267 4.256026 -76.194267 4.296026
loc=geocode_OSM(q = "La Herradura Bolivar Valle")
leaflet() %>% addTiles() %>% addCircleMarkers(lng = loc$coords[1],lat = loc$coords[2])
# PUNTO 2:
Punto2=geocode_OSM(q = "calle 8g carrera 51, cali")
Punto2
## $query
## [1] "calle 8g carrera 51, cali"
##
## $coords
## x y
## -76.543094 3.409819
##
## $bbox
## xmin ymin xmax ymax
## -76.543338 3.409007 -76.543094 3.409819
loc=geocode_OSM(q = "calle 8g carrera 51, cali")
leaflet() %>% addTiles() %>% addCircleMarkers(lng = loc$coords[1],lat = loc$coords[2])
# Punto 1: -76.214267 4.276026
# Punto 2: -76.543094 3.409819
# PARA PUNTO 1: LA HERRADURA
puntos_1 <- data.frame(
longitude = c(-76.214267),
latitude = c(4.276026)
)
temp_puntos_1=as.data.frame( extract(temperaturas,puntos_1))
prec_puntos_1= as.data.frame( extract(precipitacion,puntos_1))
temp_puntos_1
prec_puntos_1
# Gráficas de series de tiempos de temperatura y precipitación punto 1.
T1_rural=ts(as.numeric(temp_puntos_1[1,]))
plot(T1_rural, main= "Temperatura - Punto 1", col="blue")

P1_rural=ts(as.numeric(prec_puntos_1[1,]))
plot(P1_rural, main= "Precipitación - Punto 1", col="darkgreen")

# Promedios temperatura y precipitación punto 1
sum(temp_puntos_1)/12
## [1] 21.77679
sum(prec_puntos_1)/12
## [1] 141.3333
De acuerdo con los rangos óptimos para el cultivo de caña,
observamos que para el punto 1 (la herradura) ubicado en el norte del
valle del cauca, la tempreatura promedio se encuentra por debajo de los
rangos en casi 1°C, mienttras que el promedio de la precipitación
mensual se encuentra dentro del rango optimo para el cultivo de la caña
de zucar.
# Punto 1: -76.214267 4.276026
# Punto 2: -76.543094 3.409819
# PARA PUNTO 2: calle 8g carrera 51, cali
puntos_2 <- data.frame(
longitude = c(-76.543094),
latitude = c(3.409819)
)
temp_puntos_2=as.data.frame( extract(temperaturas,puntos_2))
prec_puntos_2= as.data.frame( extract(precipitacion,puntos_2))
temp_puntos_2
prec_puntos_2
# Gráficas de series de tiempos de temperatura y precipitación punto 2.
T2_urbano=ts(as.numeric(temp_puntos_2[1,]))
plot(T2_urbano, main= "Temperatura - Punto 2", col="blue")

P2_urbano=ts(as.numeric(prec_puntos_2[1,]))
plot(P2_urbano, main= "Precipitación - Punto 2", col="darkgreen")

# Promedios temperatura y precipitación punto 1
sum(temp_puntos_2)/12
## [1] 20.21494
sum(prec_puntos_2)/12
## [1] 152.6667
De acuerdo con los rangos óptimos para el cultivo de caña,
observamos que para el punto 2 (zona urbana de cali) ubicado en la calle
8g carrera 51 del sur de Cali - Valle del Cauca, la tempreatura promedio
se encuentra por debajo de los rangos en un poco mas de 2°C, mienttras
que el promedio de la precipitación mensual se encuentra dentro del
rango optimo para el cultivo de la caña de zucar.
Metrica de Similaridad
#PUNTO 1
simil_p1_temp= sqrt(sum((temperaturas-as.numeric(T1_rural))^2))
levelplot(simil_p1_temp,par.settings=BTCTheme,at=seq(0,176,10), main="Zonas similares a Punto 1 en temperatura")

simil_p1_prec= sqrt(sum((precipitacion-as.numeric(P1_rural))^2))
levelplot(simil_p1_prec,par.settings=BTCTheme,at=seq(0,2383,100), main="Zonas similares a Punto 1 en precipitación")

# Rangos óptimos para el cultivo de caña:
# Temperatura media entre 22.5 y 28 grados centigrados
# Precipitación anual entre 1500 y 3500 milímetros
# Precipitación mensual entre 125 y 290 milímetros
simil_p1_temp_filtro<-simil_p1_temp
simil_p1_temp_filtro[(simil_p1_temp_filtro >28)] <- NA
simil_p1_prec_filtro<-simil_p1_prec
simil_p1_prec_filtro[(simil_p1_prec_filtro >290)] <- NA
interse<-simil_p1_temp_filtro & simil_p1_prec_filtro
opar <- par()
par(mar = c(0,0, 0, 0))
plot(mundo)
plot(interse,add=T, col="blue",breaks=c(1,1.1),legend=FALSE)

par(opar)
## Warning in par(opar): el parámetro del gráfico "cin" no puede ser especificado
## Warning in par(opar): el parámetro del gráfico "cra" no puede ser especificado
## Warning in par(opar): el parámetro del gráfico "csi" no puede ser especificado
## Warning in par(opar): el parámetro del gráfico "cxy" no puede ser especificado
## Warning in par(opar): el parámetro del gráfico "din" no puede ser especificado
## Warning in par(opar): el parámetro del gráfico "page" no puede ser especificado
Se obtienen zonas en Colombia, Brasil, Ecuador, centro de Africa y
Asia.
#PUNTO 2
simil_p2_temp= sqrt(sum((temperaturas-as.numeric(T2_urbano))^2))
levelplot(simil_p2_temp,par.settings=BTCTheme,at=seq(0,176,10), main="Zonas similares a Punto 2 en temperatura")

simil_p2_prec= sqrt(sum((precipitacion-as.numeric(P2_urbano))^2))
levelplot(simil_p2_prec,par.settings=BTCTheme,at=seq(0,2383,100), main="Zonas similares a Punto 2 en precipitación")

simil_p2_temp_filtro<-simil_p2_temp
simil_p2_temp_filtro[(simil_p2_temp_filtro >28)] <- NA
simil_p2_prec_filtro<-simil_p2_prec
simil_p2_prec_filtro[(simil_p2_prec_filtro >290)] <- NA
interse2<-simil_p2_temp_filtro & simil_p2_prec_filtro
opar <- par()
par(mar = c(0,0, 0, 0))
plot(mundo)
plot(interse2,add=T, col="red",breaks=c(1,1.1),legend=FALSE)

par(opar)
## Warning in par(opar): el parámetro del gráfico "cin" no puede ser especificado
## Warning in par(opar): el parámetro del gráfico "cra" no puede ser especificado
## Warning in par(opar): el parámetro del gráfico "csi" no puede ser especificado
## Warning in par(opar): el parámetro del gráfico "cxy" no puede ser especificado
## Warning in par(opar): el parámetro del gráfico "din" no puede ser especificado
## Warning in par(opar): el parámetro del gráfico "page" no puede ser especificado
Igualmente se obtienen zonas en Colombia, Brasil, Ecuador, centro de
Africa y Asia.