Para geocodificar en R utilizamos la libreria tmaptools y la función geocode_OSM:
require(tmaptools)
geocode_OSM(q = "Pontificia Universidad Javeriana Cali")
## $query
## [1] "Pontificia Universidad Javeriana Cali"
##
## $coords
## x y
## -76.533031 3.347145
##
## $bbox
## xmin ymin xmax ymax
## -76.534488 3.344402 -76.530498 3.349302
Ahora vamos a comprobar que la libreria esta geocodificando de manera correcta
require(leaflet)
loc=geocode_OSM(q = "Pontificia Universidad Javeriana Cali")
leaflet() %>% addTiles() %>% addCircleMarkers(lng = loc$coords[1],lat = loc$coords[2])
Lo primero para cargar las imagenes raster en R es instalar la libreria raster y rgdal que tambien las usamos para cargar los archivos en formato shapefile. Vamos primero a usar la función raster para cargar y visualizar solo una imagen raster que corresponde a la temperatura del mes de enero a nivel global:
require(raster)
require(rgdal)
temp_enero=raster("~/Desktop/data_global/tmean/current_tmean_01.asc")
plot(temp_enero)
Ahora vamos a hacer lo mismo pero con todos los meses del año y usamos la función stack para cargarlos todos. Antes de esto listamos las rutas de los 12 archivos con la función list.files:
archivos=list.files("~/Desktop/data_global/tmean/",full.names = TRUE)
temperaturas=stack(archivos)
temperaturas
## class : RasterStack
## dimensions : 300, 720, 216000, 12 (nrow, ncol, ncell, nlayers)
## resolution : 0.5, 0.5 (x, y)
## extent : -180, 180, -60, 90 (xmin, xmax, ymin, ymax)
## crs : NA
## names : current_tmean_01, current_tmean_02, current_tmean_03, current_tmean_04, current_tmean_05, current_tmean_06, current_tmean_07, current_tmean_08, current_tmean_09, current_tmean_10, current_tmean_11, current_tmean_12
## min values : -2147483648, -2147483648, -2147483648, -2147483648, -2147483648, -2147483648, -2147483648, -2147483648, -2147483648, -2147483648, -2147483648, -2147483648
## max values : 2147483647, 2147483647, 2147483647, 2147483647, 2147483647, 2147483647, 2147483647, 2147483647, 2147483647, 2147483647, 2147483647, 2147483647
plot(temperaturas)
Ahora si queremos cambiar los nombres de las temperaturas por los meses de los aƱos es similar a como se cambia en un data.frame:
names(temperaturas)=month.name
plot(temperaturas)
Debo aclarar que el objeto month.name ya existe en R.
Probemos ahora la visualización con la libreria rasterVis la cual estandariza la misma simbologia de los mapas lo cual es ideal para comparar los meses:
require(rasterVis)
levelplot(temperaturas,par.settings=BuRdTheme)