Manejo de Datos Espaciales

En este Rpbs se trata la carga de una libreria con datos espaciales y el procesamiento de los datos, realizamos la grafica de las variables con librerias especializadas.

1. Cargar libreria y la base de datos

Cargamos la libreria sp, disponible para el tratamiento de datos espaciales

library(sp)   #Libraria para el tratamiento de datos espaciales

Cargamos la base de datos “meuse”, la observamos y vemos sus dimensiones

data(meuse)   #Carga la base de datos "meuse"
View(meuse)   # Observar la base de datos
dim(meuse)    #Observar las dimensiones de la base de datos
## [1] 155  14

Para observar la descripción de la libreria y la base de datos, se puede consultar la documentación de R

#?sp
#?meuse

Para Observar el tipo de base de datos cargada

2. Conversión a datos espaciales

Convertimos las columnas (x,y) de la base de datos meuse en un objeto espacial

coordinates(meuse) = c("x", "y") # Convierte el data.frame a un objeto espacial de tipo SPACIAPOINTDATAFRAME
class(meuse)
## [1] "SpatialPointsDataFrame"
## attr(,"package")
## [1] "sp"

Diagramamos la base de datos meuse

plot(meuse,main="Dato espacial: Cruz")  # Diagrama la base de datos en forma de cruz

plot(meuse, pch=1, main="Dato espacial: Punto") # Diagrama la base de datos con forma de puntos

3. Tratamiento de los datos espaciales

Para unir los datos en forma de linea ejecutamos las siguientes lineas

cc = coordinates(meuse)
m.sl = SpatialLines(list(Lines(list(Line(cc)), "line1")))
plot(m.sl,main="Dato espacial: Línea" )

Diagramamos el la distribución espacial del rio meuse (Poligono)

data(meuse.riv) 
meuse.lst = list(Polygons(list(Polygon(meuse.riv)), "meuse.riv")) 
meuse.pol = SpatialPolygons(meuse.lst) 
plot(meuse.pol, col = "grey",main="Dato espacial: Poligono(Rio Meuse)")

Diagramamos la distribución espacial del poligono (RIO MEUSE) Y las muestras espaciales

plot(meuse,pch=1,main="Poligono vs Muestras")
plot(meuse.pol, col = "grey", add = TRUE)

Diagramamos la distrbución espacial de la variable Zinc, por medio de la libreria “laticce”

library(lattice)
spplot(meuse, c("zinc"),main="Distribución variable ZINC")

Diagramamos la distrbución espacial conlas coordenadas (x,y)

library(ggplot2)
methods(fortify)
##  [1] fortify.cld*                      fortify.confint.glht*            
##  [3] fortify.data.frame*               fortify.default*                 
##  [5] fortify.formula*                  fortify.function*                
##  [7] fortify.glht*                     fortify.grouped_df*              
##  [9] fortify.Line*                     fortify.Lines*                   
## [11] fortify.lm*                       fortify.map*                     
## [13] fortify.NULL*                     fortify.Polygon*                 
## [15] fortify.Polygons*                 fortify.sfc*                     
## [17] fortify.sfg*                      fortify.SpatialLinesDataFrame*   
## [19] fortify.SpatialPolygons*          fortify.SpatialPolygonsDataFrame*
## [21] fortify.summary.glht*             fortify.tbl*                     
## [23] fortify.tbl_df*                  
## see '?methods' for accessing help and source code
m = as(meuse, "data.frame")
ggplot(m, aes(x, y)) + geom_point() + coord_equal()