Estudio de Caso

Un agricultor esta interesado en el cultivo de la caña de azúcar y para tomar mejores decisiones explora con datos algunas regiones que tengan las mejores condiciones para el cultivo de la caña de azucar, a partir de los siguientes parametros:

Temperatura media entre 22,5 y 28 grados Precipitación anual entre 1.500 y 3.500 milimetros Precipitación mensual entre 125 y 290 milimetros

  1. Utilizando los datos de clima de línea base a nivel global, genere un código en R que permita construir mapas de aptitud en términos climáticos para la caña de azúcar (con base en los rangos óptimos). Grafique los mapas con una escala de colores adecuada.

Raster Temperaturas

require(raster)
require(rgdal)
require(terra)
require(maptools)
require(geoR)
require(leaflet)
require(tmaptools)
require(rasterVis)
require(RColorBrewer)
library(raster)
library(terra)
directorio <- "C:/Users/ACER/Desktop/CienciaDatos/Analsis geografica/Unit 2/promediotemp/" ## Directorio del raster de temperatura

# Se cargan los archivos raster de promedio de temperatura de cada mes del año

promedio <- list.files ("C:/Users/ACER/Desktop/CienciaDatos/Analsis geografica/Unit 2/promediotemp/",full.names = TRUE)

temperaturas= stack(promedio)
temperaturas
## class      : RasterStack 
## dimensions : 1080, 2160, 2332800, 12  (nrow, ncol, ncell, nlayers)
## resolution : 0.1666667, 0.1666667  (x, y)
## extent     : -180, 180, -90, 90  (xmin, xmax, ymin, ymax)
## crs        : +proj=longlat +datum=WGS84 +no_defs 
## names      : wc2.1_10m_tavg_01, wc2.1_10m_tavg_02, wc2.1_10m_tavg_03, wc2.1_10m_tavg_04, wc2.1_10m_tavg_05, wc2.1_10m_tavg_06, wc2.1_10m_tavg_07, wc2.1_10m_tavg_08, wc2.1_10m_tavg_09, wc2.1_10m_tavg_10, wc2.1_10m_tavg_11, wc2.1_10m_tavg_12 
## min values :         -45.88400,         -44.80000,         -57.92575,         -64.19250,         -64.81150,         -64.35825,         -68.46075,         -66.52250,         -64.56325,         -55.90000,         -43.43475,         -45.32700 
## max values :          34.00950,          32.82425,          32.90950,          34.19375,          36.25325,          38.35550,          39.54950,          38.43275,          35.79000,          32.65125,          32.78800,          32.82525
names(temperaturas)=month.name
print (temperaturas)
## class      : RasterStack 
## dimensions : 1080, 2160, 2332800, 12  (nrow, ncol, ncell, nlayers)
## resolution : 0.1666667, 0.1666667  (x, y)
## extent     : -180, 180, -90, 90  (xmin, xmax, ymin, ymax)
## crs        : +proj=longlat +datum=WGS84 +no_defs 
## names      :   January,  February,     March,     April,       May,      June,      July,    August, September,   October,  November,  December 
## min values : -45.88400, -44.80000, -57.92575, -64.19250, -64.81150, -64.35825, -68.46075, -66.52250, -64.56325, -55.90000, -43.43475, -45.32700 
## max values :  34.00950,  32.82425,  32.90950,  34.19375,  36.25325,  38.35550,  39.54950,  38.43275,  35.79000,  32.65125,  32.78800,  32.82525
plot(temperaturas,main = "Temperatura por mes")

summary(temperaturas)
## Warning in .local(object, ...): summary is an estimate based on a sample of 1e+05 cells (4.29% of all cells)
##               January      February         March         April           May
## Min.        -45.47475     -44.79750     -57.90050 -6.418850e+01     -64.69050
## 1st Qu.     -24.57931     -28.10106     -28.64813 -2.704531e+01     -26.26706
## Median      -12.22363     -13.04150      -8.36775 -3.433750e-01       6.11625
## 3rd Qu.      13.87569      15.50231      18.15519  1.913725e+01      19.56606
## Max.         33.58550      32.53525      32.65400  3.419375e+01      36.22250
## NA's    1521009.00000 1521009.00000 1521009.00000  1.521009e+06 1521009.00000
##                  June          July        August     September       October
## Min.        -64.27475     -68.40000     -66.32300 -6.440525e+01 -5.585025e+01
## 1st Qu.     -26.98319     -28.64037     -29.04169 -2.679000e+01 -2.395013e+01
## Median       11.76000      14.03938      12.48688  7.517625e+00  8.053750e-01
## 3rd Qu.      21.20394      22.47563      22.34056  2.121544e+01  1.979581e+01
## Max.         38.21725      39.09800      38.07850  3.538275e+01  3.226825e+01
## NA's    1521009.00000 1521009.00000 1521009.00000  1.521009e+06  1.521009e+06
##              November      December
## Min.    -4.341875e+01     -44.22200
## 1st Qu. -2.452319e+01     -23.15637
## Median  -7.431875e+00     -10.63775
## 3rd Qu.  1.782675e+01      14.72400
## Max.     3.274175e+01      32.77875
## NA's     1.521009e+06 1521009.00000

Para la temperatura promedio mensual, se observa que los países que se encuentran sobre la línea del ecuador tienen mayor temperatura registrada alcanzando temperaturas promedio de 39.5 °C. Los meses de Mayo a agosto son los meses con temperaturas más calientes.

Raster Precipitaciones

directorio <- "C:/Users/ACER/Desktop/CienciaDatos/Analsis geografica/Unit 2/precipitaciones/" ## Cargar directorio del raster de precipitaciones

# Se realiza el cargue de los archivos raster de promedio de cada mes del año

promedio <- list.files ("C:/Users/ACER/Desktop/CienciaDatos/Analsis geografica/Unit 2/precipitaciones/", full.names = TRUE)

precipitaciones1 = stack(promedio)

names(precipitaciones1)=month.name
print (precipitaciones1)
## class      : RasterStack 
## dimensions : 1080, 2160, 2332800, 12  (nrow, ncol, ncell, nlayers)
## resolution : 0.1666667, 0.1666667  (x, y)
## extent     : -180, 180, -90, 90  (xmin, xmax, ymin, ymax)
## crs        : +proj=longlat +datum=WGS84 +no_defs 
## names      : January, February, March, April,  May, June, July, August, September, October, November, December 
## min values :       0,        0,     0,     0,    0,    0,    0,      0,         0,       0,        0,        0 
## max values :     908,      793,   720,  1004, 2068, 2210, 2381,   1674,      1955,    2328,      718,      806
plot(precipitaciones1,main = "Precipitaciones por mes")

summary(precipitaciones1)
## Warning in .local(object, ...): summary is an estimate based on a sample of 1e+05 cells (4.29% of all cells)
##         January February   March   April     May    June    July  August
## Min.          0        0       0       0       0       0       0       0
## 1st Qu.       0        2       5       7       8       2       7      15
## Median       12       13      18      21      24      23      34      39
## 3rd Qu.      39       37      47      48      53      63      74      75
## Max.        743      567     647     680     640    1173    1718    1329
## NA's    1521009  1521009 1521009 1521009 1521009 1521009 1521009 1521009
##         September October November December
## Min.            0       0        0        0
## 1st Qu.         5       5        2        1
## Median         29      24       17       15
## 3rd Qu.        61      56       48       43
## Max.          766     727      617      747
## NA's      1521009 1521009  1521009  1521009

Por su parte, los meses que registran la mayor mediana de precipitación son los meses de Julio y Agosto con 34 y 39 milimetros respectivamente. Es decir, los países que se encuentra sobre la línea del ecuador o cerca de ella son lo que mayores precipitaciones experimentan al año.

Parámetros óptimos cultivo Caña de Azúcar

Precipitación anual entre 1.500 y 3.500 milimetros, y precipitación mensual entre 125 y 290 milimetros.

prec_optima = precipitaciones1>=125&precipitaciones1<=290

mytheme <- rasterTheme(region = brewer.pal(9, "Blues"))

levelplot(prec_optima,main = "Precipitación Mensual Óptima para la caña",par.settings=mytheme)

levelplot(prec_optima,par.settings=BuRdTheme, main = "Precipitación anual Óptima para la caña")

Los mapas anteriores muestran las regiones con mayores niveles de precipitación en cada uno de los meses del año.

El siguiente mapa muestra la información de precipitación anual, estableciendo un rango de 0 a 100. Aquellas zonas que se acerquen a 100 presentan condiciones de precipitación durante los 12 meses del año. En particular, Colombia, Ecuador, Perú y Brasil experimentan buenas condiciones en sus precipitaciones para el desarrollo de la caña de azucar.

indi_preci <- sum((prec_optima)/12*100)
plot(indi_preci)

Temperatura media entre 22,5 y 28 grados centrigados.

temp_optima =temperaturas>=22.5&temperaturas<=28

mytheme <- rasterTheme(region = brewer.pal(9, "Greens"))

levelplot(temp_optima,par.settings=mytheme,main = "Temperatura optima para el cultivo de caña de Azúcar") 

levelplot(temp_optima,par.settings=BuRdTheme)

Los mapas anteriores representan las regiones con mejores condiciones climáticas para el desarrollo del cultivo de caña de azúcar. Adicionalmente, se establece un rango de 0 a 100 para clasificar estas zonas. Valores cercanos a 100 son consideradas las mejores zonas para el cultivo de la caña de azucar. Como se observa en el siguiente mapa las zonas ubicadas en el punto 0 correspondiente a la linea del Ecuador tienen las mejores condiciones de temperatura para el desarrollo de la caña. En este caso paises como Ecuador, Perú, Colombia, Brasil, Nigeria, Camerún y Congo.

indi_temp<-sum((temp_optima)*100/12)

plot(indi_temp, main="Sumatoria del rango de temperatura")

Países con potencial para el cultivo de Caña de Azúcar

Raster para Colombia, Brasil y Ecuador.

require(leaflet)
Co =geocode_OSM(q = "Colombia")
print(Co)
## $query
## [1] "Colombia"
## 
## $coords
##          x          y 
## -72.908813   4.099917 
## 
## $bbox
##       xmin       ymin       xmax       ymax 
## -82.124361  -4.229403 -66.851112  16.049552
require(tmaptools)
Br = geocode_OSM(q = "Brasil")
print(Br)
## $query
## [1] "Brasil"
## 
## $coords
##         x         y 
## -53.20000 -10.33333 
## 
## $bbox
##       xmin       ymin       xmax       ymax 
## -73.983063 -33.869428 -28.628965   5.269581
require(tmaptools)
Ec = geocode_OSM(q ="Ecuador")
print(Ec)
## $query
## [1] "Ecuador"
## 
## $coords
##          x          y 
## -79.366697  -1.339767 
## 
## $bbox
##       xmin       ymin       xmax       ymax 
## -92.207239  -5.015931 -75.192504   1.883596
#coordenadas de Colombia

xmin <- -82.124361  
ymin <- -4.229403   
xmax <- -66.849039  
ymax <- 16.049552  

# Realiza el recorte utilizando la función crop()

mapa_colombia1 <- crop(indi_temp, extent(xmin, xmax, ymin, ymax))

mapa_colombia2 <- crop(indi_preci, extent(xmin, xmax, ymin, ymax))

plot(mapa_colombia1, main = " Regiones de Colombia con Mejores Condiciones de Temperatura ")

plot(mapa_colombia2, main = " Regiones de Colombia con Mejores Condiciones de Precipitaciones")

#coordenadas de Brasil

xmin <- -73.983063  
ymin <- -33.868906   
xmax <- -28.628965  
ymax <- 5.269581  

# Realiza el recorte utilizando la función crop()


mapa_brasil_1 <- crop(indi_temp, extent(xmin, xmax, ymin, ymax))

mapa_brasil_2 <- crop(indi_preci, extent(xmin, xmax, ymin, ymax))

plot(mapa_brasil_1, main = " Regiones de Brasil con Mejores Condiciones de Temperatura ")

plot(mapa_brasil_2, main = " Regiones de Brasil con Mejores Condiciones de Precipitaciones")

#coordenadas del Ecuador

xmin <- -92.207239  
ymin <- -5.015931   
xmax <- -75.192504
ymax <- 1.883596  

# Realiza el recorte utilizando la función crop()


mapa_ecuador_1 <- crop(indi_temp, extent(xmin, xmax, ymin, ymax))

mapa_ecuador_2 <- crop(indi_preci, extent(xmin, xmax, ymin, ymax))

plot(mapa_ecuador_1, main = " Regiones de Ecuador con Mejores Condiciones de Temperatura ")

plot(mapa_ecuador_2, main = " Regiones de Ecuador con Mejores Condiciones de Precipitaciones")

Como se muestra en los anteriores mapas, Ecuador, Colombia y Brasil tienen una posición favorecida para el desarrollo de este cultivo.

Análisis de ciudades del Valle del Cauca.

Se seleccionaron dos municipios del Valle del Cauca: Palmira y Cartago, para los cuales se realiza una analisis de precipitación y temperatura.

geocode_OSM(q = "Palmira, Valle")
## $query
## [1] "Palmira, Valle"
## 
## $coords
##          x          y 
## -76.298805   3.530837 
## 
## $bbox
##       xmin       ymin       xmax       ymax 
## -76.491742   3.451623 -75.949667   3.718068
leaflet() %>% addTiles() %>% addCircleMarkers(lng =-76.298805 ,lat = 3.530837)
palmira <- data.frame(
  longitude = c(-76.298805), 
  latitude = c(3.530837))

# Se construyen los data frame con la información.

temp_palmira=as.data.frame( extract(temperaturas,palmira))
prec_palmira= as.data.frame( extract(precipitaciones1,palmira))
temp_palmira
##    January February    March    April     May   June    July   August September
## 1 22.50275  22.6155 22.73675 22.44175 22.3585 22.328 22.6225 22.74675  22.57575
##    October November December
## 1 22.02075 21.88275 22.14775
temp_palmira=ts(as.numeric(temp_palmira[1,]))
plot(temp_palmira, main= "Temperatura en Palmira", col="green")

# Se presentan los datos de precipitación

prec_palmira
##   January February March April May June July August September October November
## 1      92      102   132   172 146  112   61     73       105     195      173
##   December
## 1      121
prec_palmira=ts(as.numeric(prec_palmira[1,]))
plot(prec_palmira, main= "Precipitación en Palmira", col="blue")

Cartago

geocode_OSM(q = "Cartago, Valle")
## $query
## [1] "Cartago, Valle"
## 
## $coords
##          x          y 
## -75.932388   4.710659 
## 
## $bbox
##       xmin       ymin       xmax       ymax 
## -76.016663   4.612901 -75.822119   4.808081
leaflet() %>% addTiles() %>% addCircleMarkers(lng =-75.912123 ,lat = 4.746549)
#información correspondiente a la temperatura y precipitación
cartago <- data.frame(
  longitude = c(-75.912123), 
  latitude = c(4.746549))

# Se construyen los data frame con la información.

temp_cartago=as.data.frame( extract(temperaturas,cartago))
prec_cartago= as.data.frame( extract(precipitaciones1,cartago))
temp_cartago
##   January February    March    April      May   June   July   August September
## 1 23.2375 23.45825 23.57375 23.26525 23.08175 23.006 23.382 23.42725  23.08925
##   October November December
## 1 22.5165   22.501 22.84375
temp_cartago=ts(as.numeric(temp_cartago[1,]))
plot(temp_cartago, main= "Temperatura en Cartago", col="green")

#datos de precipitación

prec_cartago
##   January February March April May June July August September October November
## 1     106      109   150   217 202  159  110    129       169     241      197
##   December
## 1      107
prec_cartago=ts(as.numeric(prec_cartago[1,]))
plot(prec_cartago, main= "Precipitación en Cartago", col="blue")

Identificación de Mapas de Similitud Palmira

Palmira_comp_temp=sqrt(sum((temperaturas-as.numeric(temp_palmira))^2))


levelplot(Palmira_comp_temp,par.settings=BTCTheme,at=seq(0,176,10), main="Zonas similares a Palmira según su Temperatura")

Palmira_comp_prec=sqrt(sum((precipitaciones1-as.numeric(prec_palmira))^2))


levelplot(Palmira_comp_prec,par.settings=BTCTheme,at=seq(0,2383,100), main="Zonas similares a Palmira según su Precipitación")

#Comparación de la precipitación

Cartago_comp_temp=sqrt(sum((temperaturas-as.numeric(temp_cartago))^2))


levelplot(Cartago_comp_temp,par.settings=BTCTheme,at=seq(0,176,10), main="Zonas similares a Cartago según su Temperatura")

Cartago_comp_prec=sqrt(sum((precipitaciones1-as.numeric(prec_cartago))^2))


levelplot(Cartago_comp_prec,par.settings=BTCTheme,at=seq(0,2383,100), main="Zonas similares a Cartago según su Precipitación")

## Conclusiones

A nivle global existen regiones con similitudes climáticas para el cultivo de la siembra de caña de azucar, particularmente algunos paises de África, Sudamérica, y el sudeste asiático.

Las regiones con similitudes significativas tienden a estar en zonas tropicales y subtropicales, y existen zonas especificas que cuentan con condiciones climáticas optimas. Sin embargo, hay zonas con promedios y diferencias en los promedios de temperatura y precipitación en cada region.

En el caso del los dos municipios del Valle del Cauca, se obtienen resultados similares al primer ejercicio de identificación de las regiones del mundo que cuentan con condiciones optimas para el cultivo de caña de Azúcar, como es el caso de una zona de Ecuador, Brasil y Perú en Suramerica, y particularmente la región de Africa central.