SlideShare a Scribd company logo
Visualizando Datos: 
la geolocalización como herramienta 
emergente de análisis demográfico 
Presentación RugBCN 9 de Octubre 2013 
JUAN GALEANO
ESTRUCTURA DE LA PRESENTACIÓN 
INTRO: CAMBIO DEMOGRÁFICO Y GESTIÓN MUNICIPAL DE LA DIVERSIDAD 
1. LECTURA DE FICHEROS GRANDES, ENORMES 
2. DIVIDIR UN DATA-FRAME DE ACUERDO A UNA VARIABLE DE INTERÉS 
3. DIVIDIR UN ARCHIVO DE EXTENSIÓN .SHP EN MULTIPLES ARCHIVOS .SHP 
4. GEOLOCALIZACIÓN DE INFORMACIÓN: PLOTGOOGLEMAPS PACKAGE 
5. VISUALIZANDO DATOS: GOOGLEVIS PACKAGE
INTRO: CAMBIO DEMOGRÁFICO Y GESTIÓN MUNICIPAL DE LA DIVERSIDAD 
http://gedemced.uab.cat
AVISO A NAVEGANTES 
• Soy un usuario de R autodidacta (mejor dicho blog-didacta). 
• Lo que presentaré aquí ha funcionado para mi. 
• Sin lugar a dudas hay maneras más eficientes y, sobretodo, elegantes de programar. 
• Para conocer toda la verdad sobre las funciones y packages que repasaremos en esta 
presentación, lo mejor es leer atentamente la documentación elaborada por sus 
desarrolladores.
LECTURA DE FICHEROS GRANDES, ENORMES (I) 
Padrón municipal del habitantes: 47.265.321 personas (filas) en 2012. 
Fuentes de los datos: Instituto Nacional de Estadística (INE). 
Formato: .sav (SPSS) 
Variables incluidas en el fichero: 
• provincia, 
• municipio, 
• distrito, 
• sección, 
• sexo, 
• edad, 
• pronac (provincia de 
nacimiento), 
• paisnac (paisnac), 
• munnac, 
• año 
¿Qué hacemos con esto? ¿Cómo podemos trabajar en R con un fichero de este tamaño?
LECTURA DE FICHEROS GRANDES, ENORMES (II) 
1. Necesitamos transformar el archivo en algo con lo que podamos trabajar en R (.txt, .csv) 
Guardamos el archivo .sav como un .csv delimitado por ; 
2. Utilizamos la función file para conectar con el fichero que nos interesa 
padro2012 <- file("C:/Users/ced/Desktop/PC2012.csv“) 
3. Utilizamos el package sqldf (función homónima) para leer el archivo en R pidiendo que 
los datos sean agrupados de la manera que convenga (en este caso por sección censal). 
padro2012a <- sqldf("select provincia, municipio, distrito, seccion, pronac, paisnac, count(*) 
from padro2012 group by provincia, municipio, distrito, seccion, pronac, 
paisnac", dbname = tempfile(), file.format = list(header = T, row.names = F, 
sep = ";"), stringsAsFactors = FALSE)
LECTURA DE FICHEROS GRANDES, ENORMES (III) 
La operación realizada con la función sqldf nos devuelve un data-frame que, en este caso, 
esta compuesto de 2.031.894 observaciones (filas) y 7 variables (columnas)
DIVIDIR UN DATA-FRAME DE ACUERDO A UNA VARIABLE DE INTERÉS (I) 
Tengo un data-frame de 35.960 observaciones (filas) y 24 variables (columnas). Necesito 
dividir esta información sobre la población a nivel de sección censal agrupándola por 
municipios.
DIVIDIR UN DATA-FRAME DE ACUERDO A UNA VARIABLE DE INTERÉS (II) 
1. Determino un directorio de trabajo donde irán a parar los archivos. 
setwd ("C:/Users/CED/Dropbox/R/DATA/MUNICIPIOS") 
2. Divido el fichero por municipios (conservando todas las variables e incluyendo todas 
secciones censales de cada municipio) utilizando la función split. 
spt1 <- split(secc2011, secc2011$codmun) #esto genera un List de 8.116 elementos 
3. creo los 8116 archivos correspondientes a los municipios de España en 2011 utilizando 
las funciones lapply, names y write.table. 
lapply(names(spt1), 
function(x){ 
write.table(spt1[[x]], file = x)}) 
Nota: también podríamos agregar una extensión en la tablas utilizando la función paste 
write.table(spt1[[x]], file = paste(x, ".Rdata", sep = "") 
http://stackoverflow.com/questions/10002021/split-dataframe-into-multiple-output-files-in-r
DIVIDIR UN DATA-FRAME DE ACUERDO A UNA VARIABLE DE INTERÉS (III) 
Resultado: de tener 
un data-frame con 
35.960 observaciones 
y 24 variables, paso a 
tener una carpeta en 
la que he creado 
8.116 tablas, una para 
cada municipio de 
España en 2011, de 24 
variables cada una.
DIVIDIR UN ARCHIVO DE EXTENSIÓN .SHP EN MULTIPLES ARCHIVOS .SHP (I) 
Tengo un shapefile de la composición territorial de España en el año 2011 por secciones 
censales. 
Lo que necesito es poder dividir 
este archivo en un múltiples 
shapefiles que contengan la 
división por secciones censales 
agrupadas a nivel municipal. 
Info detallada sobre archivos .shp 
http://en.wikipedia.org/wiki/Shapefile 
Mapa de España por secciones censales año 2011. Fuente Instituto Nacional de Estadística.
DIVIDIR UN ARCHIVO DE EXTENSIÓN .SHP EN MULTIPLES ARCHIVOS .SHP (II) 
Esta tarea pude ser realizada en R en 5 pasos: 
1. Cargar las packages que necesitaré utilizar (sp) y (rgal): 
library (sp) 
library (rgal) 
2. Leer el shapefile que quiero dividir utilizando la función readOGR, contenida por el 
package rgal 
SPAIN <- readOGR("C:/Users/ced/Dropbox/MAPAS/SECCIONES ESPAÑA Y BALEARES 2011", 
"PeninsulayBaleares2011") 
3. Crear un vector con valores únicos para cada subregión (municipios en este caso), 
utilizando la función unique. 
y <- unique(SPAIN@data$PROVMUN2)
DIVIDIR UN ARCHIVO DE EXTENSIÓN .SHP EN MULTIPLES ARCHIVOS .SHP (III) 
4. Establecer un directorio de trabajo donde van a ir a para los nuevos archivos .shp 
setwd ( “C:/Users/ced/Dropbox/MAPAS/SECCIONES POR MUNICIPIO 2011”) 
5. Crear un shapefile para cada una de las subregiones y guardarlos como archivos .shp. 
Para ello utilizo un for loop y la función writeOGR del package rgdal. 
for (i in 1:length(y) ) { 
temp3 <- SPAIN[SPAIN$PROVMUN2 == y[i], ] 
writeOGR(temp3, dsn=getwd(), y[i], driver="ESRI Shapefile", 
overwrite_layer=TRUE) 
} 
http://stackoverflow.com/questions/13175489/create-many-shape-file-from-a-large-shape-file
DIVIDIR UN ARCHIVO DE EXTENSIÓN .SHP EN MULTIPLES ARCHIVOS .SHP (IV) 
Resultado: de tener un 
archivo .shp gigantesco, 
paso a tener una 
carpeta en la que he 
creado 32.464 archivos. 
4 archivos por cada 
municipio. 32.464/4 = 
8.116 municipios de 
España en 2011. Esta 
operación tardó casi un 
día en realizarse.
GEOLOCALIZACIÓN DE INFORMACIÓN: PLOTGOOGLEMAPS PACKAGE (I) 
El package plotGoogleMaps permite graficar, proyectando sobre Google Maps, 5 tipos de 
objetos: 
1. SpatialPointsDataFrame 
2. SpatialLinesDataFrame 
3. SpatialPoligonsDataFrame 
4. SpatialPixelsDataFrame 
5. SpatialTemporalDataFrame (STFDF & STIDF) (Full Lattice & Irregular) 
Adicionalmente, se pueden combinar 2 o más de los objetos 1-4 en un gráfico-mapa 
“multi-capa”. 
Info detallada: http://cran.r-project.org/web/packages/plotGoogleMaps/vignettes/plotGoogleMaps-tutorial. 
pdf
GEOLOCALIZACIÓN DE INFORMACIÓN: PLOTGOOGLEMAPS PACKAGE (II) 
Para graficar un SpatialPoligonsDataFrame (SPDF), proyectándolo sobre Google Maps, 
necesitamos cargar 3 packages: 
1. maptools (con el que leeremos el SPDF en R) 
2. rgal (con el que determinaremos la proyección geográfica correspondiente) 
3. plotGoogleMaps (con el que crearemos el archivo de extensión .html de nuestro mapa) 
Nota: también podríamos leer el SPDF con la función readOGR del package rgal, cada quien a su gusto. 
Además necesitamos: 
• Una base cartográfica (archivo de extensión .shp), y 
• Un archivo (data-frame) que contenga los datos que queremos representar.
GEOLOCALIZACIÓN DE INFORMACIÓN: PLOTGOOGLEMAPS PACKAGE (III) 
Para realizar nuestro mapa: 
1. ### CARGAR PACKAGES ### 
library (maptools) 
library (plotGoogleMaps) 
library (rgdal) 
2 . ### CARGAR LA BASE CARTOGRÁFICA ### 
A08019.shp <- readShapeSpatial("C:/Users/ced/Dropbox/MAPAS/SECCIONES POR 
MUNICIPIO 2011/A08019") 
plot(A08019.shp) 
Mapa del municipio de Barcelona por secciones censales. 
Fuente Instituto Nacional de Estadística.
GEOLOCALIZACIÓN DE INFORMACIÓN: PLOTGOOGLEMAPS PACKAGE (IV) 
Para realizar nuestro mapa: 
3. ### CARGAR DATOS A REPRESENTAR ### 
A08019 <- read.table("C:/Users/CED/Dropbox/R/DATA/MUNICIPIOS/A08019",header=T, 
quote=""") 
4. ### UNIR LOS DATOS QUE QUEREMOS REPRESENTAR A LA BASE CARTOGRÁFICA ### 
mun <- merge(A08019.shp@data, A08019, by ="codi")
GEOLOCALIZACIÓN DE INFORMACIÓN: PLOTGOOGLEMAPS PACKAGE (V) 
Para realizar nuestro mapa: 
5. ### MUY IMPORTANTE: ORDENO LOS DATOS DE ACUERDO AL ORDEN DE LOS 
OBJETOS DE LA BASE CARTOGRÁFICA ### 
mun2b <- mun[order(order(A08019.shp@data$codi)), ]
GEOLOCALIZACIÓN DE INFORMACIÓN: PLOTGOOGLEMAPS PACKAGE (VI) 
Para realizar nuestro mapa: 
6. ### AGREGO, AL APARTADO DE DATOS DEL SPDF, LAS VARIABLES QUE ME INTERESA 
QUE APAREZCAN EN EL CUADRO DE DIÁLOGO ### 
A08019.shp@data$CAT <- mun2b$Tipus_Residencial 
A08019.shp@data$PT <- mun2b$Poblacio_Total 
A08019.shp@data$ESP <- mun2b$PES 
A08019.shp@data$LA <- mun2b$PLA 
A08019.shp@data$WE <- mun2b$PEOc 
A08019.shp@data$EE <- mun2b$PEOr 
A08019.shp@data$AF <- mun2b$PAF 
A08019.shp@data$AS <- mun2b$PAS 
A08019.shp@data$OT <- mun2b$PAL 
colnames(A08019.shp@data) <- c("ID", "CAT", "Total pop.", "Spanish", "Latin-American", 
"Western Europe", "Eastern Europe", "Africa", "Asia", "Others")
GEOLOCALIZACIÓN DE INFORMACIÓN: PLOTGOOGLEMAPS PACKAGE (VII) 
Para realizar nuestro mapa: 
7. ### DETERMINO LOS COLORES (FORMATO HTML) CON QUE QUIERO UTILIZAR ### 
colores <- c("#4F9E35","#44F608","#FC9272","#FB6A4A") 
#4F9E35= 
#44F608= 
#FC9272= 
#FB6A4A= 
8. ### DETERMINO EL SISTEMA DE PROYECCION GEOGRAFICA ### 
Para ello utilizo la función proj4string del package rgdal 
proj4string(A08019.shp) <- CRS("+proj=utm +zone=30N +ellps=intl +units=m +towgs84=- 
87,-96,-120 +no_defs") 
9. ### ESTABLEZCO EL DIRECTORIO DONDE SE GUARDAN LOS ARCHIVOS HTM Y PNG ### 
setwd ("C:/Users/ced/Desktop/RugBCN 2013")
GEOLOCALIZACION DE INFORMACION: PLOTGOOGLEMAPS PACKAGE (VIII) 
Para realizar nuestro mapa: 
10. ### HAGO MI MAPA ### 
A08019M <- plotGoogleMaps (A08019.shp, 
zcol = "CAT", 
colPalette = colores, 
streetViewControl=TRUE, 
strokeColor = "Black", 
map.width = "80%", 
map.height ="100%", 
control.width ="20%", 
control.height ="80%", 
zoom=12, 
fitBounds=FALSE, 
layerName= paste(A08019[1, c("Nom_Mun")], "2011", sep=" "), 
filename = paste("A08019", "htm", sep="."))
GEOLOCALIZACION DE INFORMACION: PLOTGOOGLEMAPS PACKAGE (IX) 
Resultado:
VISUALIZANDO DATOS: GOOGLEVIS PACKAGE (I) 
El package googleVis proporciona un nexo (interfaz) entre R y el Google Chart Tools. 
Las funciones del googleVis package permiten visualizar datos almacenados como data-frames 
en R utilizando los tipos de representación del Google Chart Tools, sin que haya 
necesidad de subir nuestros datos a Google. 
El resultado de la ejecución de una función del googleVis package es un código HTML que 
contiene los datos y las referencias a funciones JavaScript alojados por Google. 
La finalidad del googleVis package es la creación de gráficos que, además de poder ser 
ejecutados de forma local, puedan insertarse fácilmente en una página web. 
De entre los distintos tipos de representación posibles, aquí nos ocuparemos de dos. 
1. Tables 
2. Motion Charts 
Info detallada: http://cran.r-project.org/web/packages/googleVis/vignettes/googleVis.pdf
VISUALIZANDO DATOS: GOOGLEVIS PACKAGE (II) 
Crear una Tabla de consulta on-line con googleVis: 
library (googleVis) 
data<- read.csv ("C:/Users/CED/Dropbox/R/DATA/PROVINCIAS_2000_2010_SEGREGACION.csv")
VISUALIZANDO DATOS: GOOGLEVIS PACKAGE (III) 
Crear una Tabla de consulta on-line con googleVis: 
PROVINCIAS_tabla <- gvisTable(data, options=list(width=705, height=513), chartid= 
"PROVINCIAS") 
plot (PROVINCIAS_tabla) 
Guardamos nuestra 
tabla en un archivo 
de extensión .htm 
print(PROVINCIAS_tabla, file="C:/Users/ced/Desktop/RugBCN 2013/TABLA_PROVINCIAS.htm")
VISUALIZANDO DATOS: GOOGLEVIS PACKAGE (IV) 
Crear una Motion Chart de consulta on-line con googleVis: 
BC <- gvisMotionChart(data, 
idvar = "Provincia", 
time = "Año", 
xvar = "[e]Disimilitud", 
yvar = "[g]Aislamiento", 
colorvar = "[d]Porcentaje nacidos extranjero", 
sizevar = "[a]Población total", 
options= list (height= 513, 
width= 713), 
chartid="GEDEM_2013") 
plot (BC) 
Guardamos nuestra tabla en un archivo de 
extensión .htm 
print(BC, file="C:/Users/ced/Desktop/RugBCN 2013/TABLA_PROVINCIAS.htm")
VISUALIZANDO DATOS: GOOGLEVIS PACKAGE (IV) 
Para insertar un objeto del tipo gvis en una página web: 
1. Subimos nuestro archivo de extensión .htm al servidor donde tengamos la web. 
2. Utilizamos un iframe para insertarlo en nuestra página: 
{iframe width="715" height="700"}http://ced-nova. 
uab.cat/gedem/documents/SEG_PROV_ESP1.htm{/iframe} 
FINAL DE LA PRESENTACIÓN 
Agradecimientos: al Dr. Tim Riffe https://sites.google.com/site/timriffepersonal/, a Lluis 
Ramón por su presentación sobre mapas con R realizada en la reunión del RugBCN de 2012 
http://rpubs.com/Lluis_Ramon/Presentacio_mapes_amb_R, al resto de miembros de 
RugBCN, a los desarrolladores de los packages utilizados, a quienes hacen preguntas en los 
distintos foros de usuarios de R y, sobre todo, a quienes las contestan 
Muchas gracias por vuestra atención 
contacto: jgaleano@ced.uab.es 
http://gedemced.uab.cat 
GEDEM –Grup d’Estudis Demogràfics i de les Migracions 
@GEDEM_CED

More Related Content

Similar to Visualizando Datos: la geolocalización como herramienta emergente de análisis demográfico

Cloud computinglabra
Cloud computinglabraCloud computinglabra
Cloud computinglabra
Jose Emilio Labra Gayo
 
Análisis espacial con R (asignatura de Master - UPM)
Análisis espacial con R (asignatura de Master - UPM)Análisis espacial con R (asignatura de Master - UPM)
Análisis espacial con R (asignatura de Master - UPM)
Vladimir Gutierrez, PhD
 
Cloud Computing y MapReduce
Cloud Computing y MapReduceCloud Computing y MapReduce
Cloud Computing y MapReduce
Jose Emilio Labra Gayo
 
ArcGIS_Nivel1.pdf
ArcGIS_Nivel1.pdfArcGIS_Nivel1.pdf
ArcGIS_Nivel1.pdf
ssuserdecb952
 
BASIC ARGIS
BASIC ARGISBASIC ARGIS
BASIC ARGIS
Eder Gamarra Ccanri
 
MANUAL ARCGIS 10.0 NIVEL BASICO
MANUAL ARCGIS 10.0 NIVEL BASICOMANUAL ARCGIS 10.0 NIVEL BASICO
MANUAL ARCGIS 10.0 NIVEL BASICO
Jhon David Pinto Llanca
 
Tutorial elaboración de mapas con arcgis nivel basico
Tutorial elaboración de mapas con arcgis nivel basicoTutorial elaboración de mapas con arcgis nivel basico
Tutorial elaboración de mapas con arcgis nivel basico
Joseph H. Werle Ccoicca
 
Curso sig basico_i
Curso sig basico_iCurso sig basico_i
Curso sig basico_i
monasio
 
Curso sig basico_i
Curso sig basico_iCurso sig basico_i
Curso sig basico_i
monasio
 
Métodos para la exportación de datos de OpenStreetMap
Métodos para la exportación de datos de OpenStreetMapMétodos para la exportación de datos de OpenStreetMap
Métodos para la exportación de datos de OpenStreetMap
Jesús Gómez
 
Manual arcgis basico
Manual arcgis basicoManual arcgis basico
Manual arcgis basico
Gramsa
 
Manual arcgis basico
Manual arcgis basicoManual arcgis basico
Manual arcgis basico
JACK5G
 
Manual arcgis basico
Manual arcgis basicoManual arcgis basico
Manual arcgis basico
JOSELYNCHILES1991
 
Computación distribuida usando Python
Computación distribuida usando PythonComputación distribuida usando Python
Computación distribuida usando Python
Jose Manuel Ortega Candel
 
Interoperabilidad-iso-ogc-w3c-ietf
Interoperabilidad-iso-ogc-w3c-ietfInteroperabilidad-iso-ogc-w3c-ietf
Interoperabilidad-iso-ogc-w3c-ietf
Francisco J. Lopez-Pellicer
 
Manual de instalacion y creacion de un proyecto sig utilizando mapserver con ...
Manual de instalacion y creacion de un proyecto sig utilizando mapserver con ...Manual de instalacion y creacion de un proyecto sig utilizando mapserver con ...
Manual de instalacion y creacion de un proyecto sig utilizando mapserver con ...Tabodiaz
 
Introducción a hadoop
Introducción a hadoopIntroducción a hadoop
Introducción a hadoop
Carlos Meseguer Gimenez
 
conoce la in INTERFACE DE ARCGIS 10.2.pdf
conoce la in INTERFACE DE ARCGIS 10.2.pdfconoce la in INTERFACE DE ARCGIS 10.2.pdf
conoce la in INTERFACE DE ARCGIS 10.2.pdf
Maxwillgonzalesllere
 

Similar to Visualizando Datos: la geolocalización como herramienta emergente de análisis demográfico (20)

Cloud computinglabra
Cloud computinglabraCloud computinglabra
Cloud computinglabra
 
Análisis espacial con R (asignatura de Master - UPM)
Análisis espacial con R (asignatura de Master - UPM)Análisis espacial con R (asignatura de Master - UPM)
Análisis espacial con R (asignatura de Master - UPM)
 
Cloud Computing y MapReduce
Cloud Computing y MapReduceCloud Computing y MapReduce
Cloud Computing y MapReduce
 
ArcGIS_Nivel1.pdf
ArcGIS_Nivel1.pdfArcGIS_Nivel1.pdf
ArcGIS_Nivel1.pdf
 
BASIC ARGIS
BASIC ARGISBASIC ARGIS
BASIC ARGIS
 
MANUAL ARCGIS 10.0 NIVEL BASICO
MANUAL ARCGIS 10.0 NIVEL BASICOMANUAL ARCGIS 10.0 NIVEL BASICO
MANUAL ARCGIS 10.0 NIVEL BASICO
 
Tutorial elaboración de mapas con arcgis nivel basico
Tutorial elaboración de mapas con arcgis nivel basicoTutorial elaboración de mapas con arcgis nivel basico
Tutorial elaboración de mapas con arcgis nivel basico
 
Curso sig basico_i
Curso sig basico_iCurso sig basico_i
Curso sig basico_i
 
Curso sig basico_i
Curso sig basico_iCurso sig basico_i
Curso sig basico_i
 
Métodos para la exportación de datos de OpenStreetMap
Métodos para la exportación de datos de OpenStreetMapMétodos para la exportación de datos de OpenStreetMap
Métodos para la exportación de datos de OpenStreetMap
 
Manual arcgis basico
Manual arcgis basicoManual arcgis basico
Manual arcgis basico
 
Manual arcgis basico
Manual arcgis basicoManual arcgis basico
Manual arcgis basico
 
Manual arcgis basico
Manual arcgis basicoManual arcgis basico
Manual arcgis basico
 
Computación distribuida usando Python
Computación distribuida usando PythonComputación distribuida usando Python
Computación distribuida usando Python
 
Interoperabilidad-iso-ogc-w3c-ietf
Interoperabilidad-iso-ogc-w3c-ietfInteroperabilidad-iso-ogc-w3c-ietf
Interoperabilidad-iso-ogc-w3c-ietf
 
Interoperabilidad-iso-ogc-w3c-ietf
Interoperabilidad-iso-ogc-w3c-ietfInteroperabilidad-iso-ogc-w3c-ietf
Interoperabilidad-iso-ogc-w3c-ietf
 
Manual de instalacion y creacion de un proyecto sig utilizando mapserver con ...
Manual de instalacion y creacion de un proyecto sig utilizando mapserver con ...Manual de instalacion y creacion de un proyecto sig utilizando mapserver con ...
Manual de instalacion y creacion de un proyecto sig utilizando mapserver con ...
 
Taller mapsforge
Taller mapsforgeTaller mapsforge
Taller mapsforge
 
Introducción a hadoop
Introducción a hadoopIntroducción a hadoop
Introducción a hadoop
 
conoce la in INTERFACE DE ARCGIS 10.2.pdf
conoce la in INTERFACE DE ARCGIS 10.2.pdfconoce la in INTERFACE DE ARCGIS 10.2.pdf
conoce la in INTERFACE DE ARCGIS 10.2.pdf
 

More from GEDEM CED

Sota l’ombra de la incertesa: Gestió i recerca de la interculturalitat
Sota l’ombra de la incertesa:Gestió i recerca de la interculturalitatSota l’ombra de la incertesa:Gestió i recerca de la interculturalitat
Sota l’ombra de la incertesa: Gestió i recerca de la interculturalitat
GEDEM CED
 
Migracions del segle XX i XXI a Catalunya. Una mirada candeliana
Migracions del segle XX i XXI a Catalunya. Una mirada candelianaMigracions del segle XX i XXI a Catalunya. Una mirada candeliana
Migracions del segle XX i XXI a Catalunya. Una mirada candeliana
GEDEM CED
 
Diversidad Poblacional, Segregación Espacial y Desigualdad Residencial en la...
Diversidad Poblacional, Segregación Espacial y Desigualdad Residencial en la...Diversidad Poblacional, Segregación Espacial y Desigualdad Residencial en la...
Diversidad Poblacional, Segregación Espacial y Desigualdad Residencial en la...
GEDEM CED
 
El context demogràfic metropolità
El context demogràfic metropolitàEl context demogràfic metropolità
El context demogràfic metropolità
GEDEM CED
 
Gestió Municipal de la Interculturalitat: discursos y pràctiques en època de ...
Gestió Municipal de la Interculturalitat: discursos y pràctiques en època de ...Gestió Municipal de la Interculturalitat: discursos y pràctiques en època de ...
Gestió Municipal de la Interculturalitat: discursos y pràctiques en època de ...
GEDEM CED
 
Canvi Demogràfic a Salt i Girona
Canvi Demogràfic a Salt i GironaCanvi Demogràfic a Salt i Girona
Canvi Demogràfic a Salt i Girona
GEDEM CED
 
Presentació canvi demografic_i_gestio_municipal_de_la_diversitat
Presentació canvi demografic_i_gestio_municipal_de_la_diversitatPresentació canvi demografic_i_gestio_municipal_de_la_diversitat
Presentació canvi demografic_i_gestio_municipal_de_la_diversitat
GEDEM CED
 

More from GEDEM CED (7)

Sota l’ombra de la incertesa: Gestió i recerca de la interculturalitat
Sota l’ombra de la incertesa:Gestió i recerca de la interculturalitatSota l’ombra de la incertesa:Gestió i recerca de la interculturalitat
Sota l’ombra de la incertesa: Gestió i recerca de la interculturalitat
 
Migracions del segle XX i XXI a Catalunya. Una mirada candeliana
Migracions del segle XX i XXI a Catalunya. Una mirada candelianaMigracions del segle XX i XXI a Catalunya. Una mirada candeliana
Migracions del segle XX i XXI a Catalunya. Una mirada candeliana
 
Diversidad Poblacional, Segregación Espacial y Desigualdad Residencial en la...
Diversidad Poblacional, Segregación Espacial y Desigualdad Residencial en la...Diversidad Poblacional, Segregación Espacial y Desigualdad Residencial en la...
Diversidad Poblacional, Segregación Espacial y Desigualdad Residencial en la...
 
El context demogràfic metropolità
El context demogràfic metropolitàEl context demogràfic metropolità
El context demogràfic metropolità
 
Gestió Municipal de la Interculturalitat: discursos y pràctiques en època de ...
Gestió Municipal de la Interculturalitat: discursos y pràctiques en època de ...Gestió Municipal de la Interculturalitat: discursos y pràctiques en època de ...
Gestió Municipal de la Interculturalitat: discursos y pràctiques en època de ...
 
Canvi Demogràfic a Salt i Girona
Canvi Demogràfic a Salt i GironaCanvi Demogràfic a Salt i Girona
Canvi Demogràfic a Salt i Girona
 
Presentació canvi demografic_i_gestio_municipal_de_la_diversitat
Presentació canvi demografic_i_gestio_municipal_de_la_diversitatPresentació canvi demografic_i_gestio_municipal_de_la_diversitat
Presentació canvi demografic_i_gestio_municipal_de_la_diversitat
 

Recently uploaded

1- PRESENTACION DE ORIENTACIONES DE LA ORDENANZA 04-2023.11.04.24.pptx
1- PRESENTACION DE ORIENTACIONES DE LA ORDENANZA 04-2023.11.04.24.pptx1- PRESENTACION DE ORIENTACIONES DE LA ORDENANZA 04-2023.11.04.24.pptx
1- PRESENTACION DE ORIENTACIONES DE LA ORDENANZA 04-2023.11.04.24.pptx
EliseoLuisRamrez
 
Informe de violencia mayo 2024 - Multigremial Mayo.pdf
Informe de violencia mayo 2024 - Multigremial Mayo.pdfInforme de violencia mayo 2024 - Multigremial Mayo.pdf
Informe de violencia mayo 2024 - Multigremial Mayo.pdf
Emisor Digital
 
REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdfREPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
IrapuatoCmovamos
 
Claves Ipsos numero 29 --- Mayo 2024.pdf
Claves Ipsos numero 29 --- Mayo 2024.pdfClaves Ipsos numero 29 --- Mayo 2024.pdf
Claves Ipsos numero 29 --- Mayo 2024.pdf
Emisor Digital
 
e learning^.pptxdieguearmandozuñiga. Comhot
e learning^.pptxdieguearmandozuñiga. Comhote learning^.pptxdieguearmandozuñiga. Comhot
e learning^.pptxdieguearmandozuñiga. Comhot
diegozuniga768
 
Presentación sobre la geometría, aplicaciones y ramas
Presentación sobre la geometría, aplicaciones y ramasPresentación sobre la geometría, aplicaciones y ramas
Presentación sobre la geometría, aplicaciones y ramas
JosMuoz943377
 
Desarrollo de Habilidades de Pensamiento Informatica
Desarrollo de Habilidades de Pensamiento InformaticaDesarrollo de Habilidades de Pensamiento Informatica
Desarrollo de Habilidades de Pensamiento Informatica
floralbaortega88
 
Desarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamientoDesarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamiento
ManuelaReina3
 
sistema paralingüística fhdjsjsbsnnssnnsbs
sistema paralingüística fhdjsjsbsnnssnnsbssistema paralingüística fhdjsjsbsnnssnnsbs
sistema paralingüística fhdjsjsbsnnssnnsbs
SantiagoMejia99
 
PPT Interes-Simple-pptx.pptx-ejercicios.
PPT Interes-Simple-pptx.pptx-ejercicios.PPT Interes-Simple-pptx.pptx-ejercicios.
PPT Interes-Simple-pptx.pptx-ejercicios.
MELANYANELKACRUZLEON
 
ACOMPAÑAMIENTO INTEGRAL DE VALORES .pptx
ACOMPAÑAMIENTO INTEGRAL DE VALORES .pptxACOMPAÑAMIENTO INTEGRAL DE VALORES .pptx
ACOMPAÑAMIENTO INTEGRAL DE VALORES .pptx
MelanieYuksselleCarr
 
Países_por_participacion_porcentual_en_el PNB global (2024) .pdf
Países_por_participacion_porcentual_en_el PNB global (2024) .pdfPaíses_por_participacion_porcentual_en_el PNB global (2024) .pdf
Países_por_participacion_porcentual_en_el PNB global (2024) .pdf
JC Díaz Herrera
 
Análisis Datos imprecisos con lógica difusa.pdf
Análisis Datos imprecisos con lógica difusa.pdfAnálisis Datos imprecisos con lógica difusa.pdf
Análisis Datos imprecisos con lógica difusa.pdf
ReAViILICo
 
Ojiva porcentual para el análisis de datos
Ojiva porcentual para el análisis de datosOjiva porcentual para el análisis de datos
Ojiva porcentual para el análisis de datos
JaimeYael
 
Presentación diagrama de flujo del desarrollo aronautico.pptx
Presentación diagrama de flujo del desarrollo aronautico.pptxPresentación diagrama de flujo del desarrollo aronautico.pptx
Presentación diagrama de flujo del desarrollo aronautico.pptx
cmrodriguezortiz1103
 
Diapositivas D.I.P.. sobre la importancia que tiene la interpol en Honduraspptx
Diapositivas D.I.P.. sobre la importancia que tiene la interpol en HonduraspptxDiapositivas D.I.P.. sobre la importancia que tiene la interpol en Honduraspptx
Diapositivas D.I.P.. sobre la importancia que tiene la interpol en Honduraspptx
WalterOrdoez22
 
Instituciones financieras globales por efectivo disponible (2024).pdf
Instituciones financieras globales por efectivo disponible (2024).pdfInstituciones financieras globales por efectivo disponible (2024).pdf
Instituciones financieras globales por efectivo disponible (2024).pdf
JC Díaz Herrera
 

Recently uploaded (17)

1- PRESENTACION DE ORIENTACIONES DE LA ORDENANZA 04-2023.11.04.24.pptx
1- PRESENTACION DE ORIENTACIONES DE LA ORDENANZA 04-2023.11.04.24.pptx1- PRESENTACION DE ORIENTACIONES DE LA ORDENANZA 04-2023.11.04.24.pptx
1- PRESENTACION DE ORIENTACIONES DE LA ORDENANZA 04-2023.11.04.24.pptx
 
Informe de violencia mayo 2024 - Multigremial Mayo.pdf
Informe de violencia mayo 2024 - Multigremial Mayo.pdfInforme de violencia mayo 2024 - Multigremial Mayo.pdf
Informe de violencia mayo 2024 - Multigremial Mayo.pdf
 
REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdfREPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
 
Claves Ipsos numero 29 --- Mayo 2024.pdf
Claves Ipsos numero 29 --- Mayo 2024.pdfClaves Ipsos numero 29 --- Mayo 2024.pdf
Claves Ipsos numero 29 --- Mayo 2024.pdf
 
e learning^.pptxdieguearmandozuñiga. Comhot
e learning^.pptxdieguearmandozuñiga. Comhote learning^.pptxdieguearmandozuñiga. Comhot
e learning^.pptxdieguearmandozuñiga. Comhot
 
Presentación sobre la geometría, aplicaciones y ramas
Presentación sobre la geometría, aplicaciones y ramasPresentación sobre la geometría, aplicaciones y ramas
Presentación sobre la geometría, aplicaciones y ramas
 
Desarrollo de Habilidades de Pensamiento Informatica
Desarrollo de Habilidades de Pensamiento InformaticaDesarrollo de Habilidades de Pensamiento Informatica
Desarrollo de Habilidades de Pensamiento Informatica
 
Desarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamientoDesarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamiento
 
sistema paralingüística fhdjsjsbsnnssnnsbs
sistema paralingüística fhdjsjsbsnnssnnsbssistema paralingüística fhdjsjsbsnnssnnsbs
sistema paralingüística fhdjsjsbsnnssnnsbs
 
PPT Interes-Simple-pptx.pptx-ejercicios.
PPT Interes-Simple-pptx.pptx-ejercicios.PPT Interes-Simple-pptx.pptx-ejercicios.
PPT Interes-Simple-pptx.pptx-ejercicios.
 
ACOMPAÑAMIENTO INTEGRAL DE VALORES .pptx
ACOMPAÑAMIENTO INTEGRAL DE VALORES .pptxACOMPAÑAMIENTO INTEGRAL DE VALORES .pptx
ACOMPAÑAMIENTO INTEGRAL DE VALORES .pptx
 
Países_por_participacion_porcentual_en_el PNB global (2024) .pdf
Países_por_participacion_porcentual_en_el PNB global (2024) .pdfPaíses_por_participacion_porcentual_en_el PNB global (2024) .pdf
Países_por_participacion_porcentual_en_el PNB global (2024) .pdf
 
Análisis Datos imprecisos con lógica difusa.pdf
Análisis Datos imprecisos con lógica difusa.pdfAnálisis Datos imprecisos con lógica difusa.pdf
Análisis Datos imprecisos con lógica difusa.pdf
 
Ojiva porcentual para el análisis de datos
Ojiva porcentual para el análisis de datosOjiva porcentual para el análisis de datos
Ojiva porcentual para el análisis de datos
 
Presentación diagrama de flujo del desarrollo aronautico.pptx
Presentación diagrama de flujo del desarrollo aronautico.pptxPresentación diagrama de flujo del desarrollo aronautico.pptx
Presentación diagrama de flujo del desarrollo aronautico.pptx
 
Diapositivas D.I.P.. sobre la importancia que tiene la interpol en Honduraspptx
Diapositivas D.I.P.. sobre la importancia que tiene la interpol en HonduraspptxDiapositivas D.I.P.. sobre la importancia que tiene la interpol en Honduraspptx
Diapositivas D.I.P.. sobre la importancia que tiene la interpol en Honduraspptx
 
Instituciones financieras globales por efectivo disponible (2024).pdf
Instituciones financieras globales por efectivo disponible (2024).pdfInstituciones financieras globales por efectivo disponible (2024).pdf
Instituciones financieras globales por efectivo disponible (2024).pdf
 

Visualizando Datos: la geolocalización como herramienta emergente de análisis demográfico

  • 1. Visualizando Datos: la geolocalización como herramienta emergente de análisis demográfico Presentación RugBCN 9 de Octubre 2013 JUAN GALEANO
  • 2. ESTRUCTURA DE LA PRESENTACIÓN INTRO: CAMBIO DEMOGRÁFICO Y GESTIÓN MUNICIPAL DE LA DIVERSIDAD 1. LECTURA DE FICHEROS GRANDES, ENORMES 2. DIVIDIR UN DATA-FRAME DE ACUERDO A UNA VARIABLE DE INTERÉS 3. DIVIDIR UN ARCHIVO DE EXTENSIÓN .SHP EN MULTIPLES ARCHIVOS .SHP 4. GEOLOCALIZACIÓN DE INFORMACIÓN: PLOTGOOGLEMAPS PACKAGE 5. VISUALIZANDO DATOS: GOOGLEVIS PACKAGE
  • 3. INTRO: CAMBIO DEMOGRÁFICO Y GESTIÓN MUNICIPAL DE LA DIVERSIDAD http://gedemced.uab.cat
  • 4. AVISO A NAVEGANTES • Soy un usuario de R autodidacta (mejor dicho blog-didacta). • Lo que presentaré aquí ha funcionado para mi. • Sin lugar a dudas hay maneras más eficientes y, sobretodo, elegantes de programar. • Para conocer toda la verdad sobre las funciones y packages que repasaremos en esta presentación, lo mejor es leer atentamente la documentación elaborada por sus desarrolladores.
  • 5. LECTURA DE FICHEROS GRANDES, ENORMES (I) Padrón municipal del habitantes: 47.265.321 personas (filas) en 2012. Fuentes de los datos: Instituto Nacional de Estadística (INE). Formato: .sav (SPSS) Variables incluidas en el fichero: • provincia, • municipio, • distrito, • sección, • sexo, • edad, • pronac (provincia de nacimiento), • paisnac (paisnac), • munnac, • año ¿Qué hacemos con esto? ¿Cómo podemos trabajar en R con un fichero de este tamaño?
  • 6. LECTURA DE FICHEROS GRANDES, ENORMES (II) 1. Necesitamos transformar el archivo en algo con lo que podamos trabajar en R (.txt, .csv) Guardamos el archivo .sav como un .csv delimitado por ; 2. Utilizamos la función file para conectar con el fichero que nos interesa padro2012 <- file("C:/Users/ced/Desktop/PC2012.csv“) 3. Utilizamos el package sqldf (función homónima) para leer el archivo en R pidiendo que los datos sean agrupados de la manera que convenga (en este caso por sección censal). padro2012a <- sqldf("select provincia, municipio, distrito, seccion, pronac, paisnac, count(*) from padro2012 group by provincia, municipio, distrito, seccion, pronac, paisnac", dbname = tempfile(), file.format = list(header = T, row.names = F, sep = ";"), stringsAsFactors = FALSE)
  • 7. LECTURA DE FICHEROS GRANDES, ENORMES (III) La operación realizada con la función sqldf nos devuelve un data-frame que, en este caso, esta compuesto de 2.031.894 observaciones (filas) y 7 variables (columnas)
  • 8. DIVIDIR UN DATA-FRAME DE ACUERDO A UNA VARIABLE DE INTERÉS (I) Tengo un data-frame de 35.960 observaciones (filas) y 24 variables (columnas). Necesito dividir esta información sobre la población a nivel de sección censal agrupándola por municipios.
  • 9. DIVIDIR UN DATA-FRAME DE ACUERDO A UNA VARIABLE DE INTERÉS (II) 1. Determino un directorio de trabajo donde irán a parar los archivos. setwd ("C:/Users/CED/Dropbox/R/DATA/MUNICIPIOS") 2. Divido el fichero por municipios (conservando todas las variables e incluyendo todas secciones censales de cada municipio) utilizando la función split. spt1 <- split(secc2011, secc2011$codmun) #esto genera un List de 8.116 elementos 3. creo los 8116 archivos correspondientes a los municipios de España en 2011 utilizando las funciones lapply, names y write.table. lapply(names(spt1), function(x){ write.table(spt1[[x]], file = x)}) Nota: también podríamos agregar una extensión en la tablas utilizando la función paste write.table(spt1[[x]], file = paste(x, ".Rdata", sep = "") http://stackoverflow.com/questions/10002021/split-dataframe-into-multiple-output-files-in-r
  • 10. DIVIDIR UN DATA-FRAME DE ACUERDO A UNA VARIABLE DE INTERÉS (III) Resultado: de tener un data-frame con 35.960 observaciones y 24 variables, paso a tener una carpeta en la que he creado 8.116 tablas, una para cada municipio de España en 2011, de 24 variables cada una.
  • 11. DIVIDIR UN ARCHIVO DE EXTENSIÓN .SHP EN MULTIPLES ARCHIVOS .SHP (I) Tengo un shapefile de la composición territorial de España en el año 2011 por secciones censales. Lo que necesito es poder dividir este archivo en un múltiples shapefiles que contengan la división por secciones censales agrupadas a nivel municipal. Info detallada sobre archivos .shp http://en.wikipedia.org/wiki/Shapefile Mapa de España por secciones censales año 2011. Fuente Instituto Nacional de Estadística.
  • 12. DIVIDIR UN ARCHIVO DE EXTENSIÓN .SHP EN MULTIPLES ARCHIVOS .SHP (II) Esta tarea pude ser realizada en R en 5 pasos: 1. Cargar las packages que necesitaré utilizar (sp) y (rgal): library (sp) library (rgal) 2. Leer el shapefile que quiero dividir utilizando la función readOGR, contenida por el package rgal SPAIN <- readOGR("C:/Users/ced/Dropbox/MAPAS/SECCIONES ESPAÑA Y BALEARES 2011", "PeninsulayBaleares2011") 3. Crear un vector con valores únicos para cada subregión (municipios en este caso), utilizando la función unique. y <- unique(SPAIN@data$PROVMUN2)
  • 13. DIVIDIR UN ARCHIVO DE EXTENSIÓN .SHP EN MULTIPLES ARCHIVOS .SHP (III) 4. Establecer un directorio de trabajo donde van a ir a para los nuevos archivos .shp setwd ( “C:/Users/ced/Dropbox/MAPAS/SECCIONES POR MUNICIPIO 2011”) 5. Crear un shapefile para cada una de las subregiones y guardarlos como archivos .shp. Para ello utilizo un for loop y la función writeOGR del package rgdal. for (i in 1:length(y) ) { temp3 <- SPAIN[SPAIN$PROVMUN2 == y[i], ] writeOGR(temp3, dsn=getwd(), y[i], driver="ESRI Shapefile", overwrite_layer=TRUE) } http://stackoverflow.com/questions/13175489/create-many-shape-file-from-a-large-shape-file
  • 14. DIVIDIR UN ARCHIVO DE EXTENSIÓN .SHP EN MULTIPLES ARCHIVOS .SHP (IV) Resultado: de tener un archivo .shp gigantesco, paso a tener una carpeta en la que he creado 32.464 archivos. 4 archivos por cada municipio. 32.464/4 = 8.116 municipios de España en 2011. Esta operación tardó casi un día en realizarse.
  • 15. GEOLOCALIZACIÓN DE INFORMACIÓN: PLOTGOOGLEMAPS PACKAGE (I) El package plotGoogleMaps permite graficar, proyectando sobre Google Maps, 5 tipos de objetos: 1. SpatialPointsDataFrame 2. SpatialLinesDataFrame 3. SpatialPoligonsDataFrame 4. SpatialPixelsDataFrame 5. SpatialTemporalDataFrame (STFDF & STIDF) (Full Lattice & Irregular) Adicionalmente, se pueden combinar 2 o más de los objetos 1-4 en un gráfico-mapa “multi-capa”. Info detallada: http://cran.r-project.org/web/packages/plotGoogleMaps/vignettes/plotGoogleMaps-tutorial. pdf
  • 16. GEOLOCALIZACIÓN DE INFORMACIÓN: PLOTGOOGLEMAPS PACKAGE (II) Para graficar un SpatialPoligonsDataFrame (SPDF), proyectándolo sobre Google Maps, necesitamos cargar 3 packages: 1. maptools (con el que leeremos el SPDF en R) 2. rgal (con el que determinaremos la proyección geográfica correspondiente) 3. plotGoogleMaps (con el que crearemos el archivo de extensión .html de nuestro mapa) Nota: también podríamos leer el SPDF con la función readOGR del package rgal, cada quien a su gusto. Además necesitamos: • Una base cartográfica (archivo de extensión .shp), y • Un archivo (data-frame) que contenga los datos que queremos representar.
  • 17. GEOLOCALIZACIÓN DE INFORMACIÓN: PLOTGOOGLEMAPS PACKAGE (III) Para realizar nuestro mapa: 1. ### CARGAR PACKAGES ### library (maptools) library (plotGoogleMaps) library (rgdal) 2 . ### CARGAR LA BASE CARTOGRÁFICA ### A08019.shp <- readShapeSpatial("C:/Users/ced/Dropbox/MAPAS/SECCIONES POR MUNICIPIO 2011/A08019") plot(A08019.shp) Mapa del municipio de Barcelona por secciones censales. Fuente Instituto Nacional de Estadística.
  • 18. GEOLOCALIZACIÓN DE INFORMACIÓN: PLOTGOOGLEMAPS PACKAGE (IV) Para realizar nuestro mapa: 3. ### CARGAR DATOS A REPRESENTAR ### A08019 <- read.table("C:/Users/CED/Dropbox/R/DATA/MUNICIPIOS/A08019",header=T, quote=""") 4. ### UNIR LOS DATOS QUE QUEREMOS REPRESENTAR A LA BASE CARTOGRÁFICA ### mun <- merge(A08019.shp@data, A08019, by ="codi")
  • 19. GEOLOCALIZACIÓN DE INFORMACIÓN: PLOTGOOGLEMAPS PACKAGE (V) Para realizar nuestro mapa: 5. ### MUY IMPORTANTE: ORDENO LOS DATOS DE ACUERDO AL ORDEN DE LOS OBJETOS DE LA BASE CARTOGRÁFICA ### mun2b <- mun[order(order(A08019.shp@data$codi)), ]
  • 20. GEOLOCALIZACIÓN DE INFORMACIÓN: PLOTGOOGLEMAPS PACKAGE (VI) Para realizar nuestro mapa: 6. ### AGREGO, AL APARTADO DE DATOS DEL SPDF, LAS VARIABLES QUE ME INTERESA QUE APAREZCAN EN EL CUADRO DE DIÁLOGO ### A08019.shp@data$CAT <- mun2b$Tipus_Residencial A08019.shp@data$PT <- mun2b$Poblacio_Total A08019.shp@data$ESP <- mun2b$PES A08019.shp@data$LA <- mun2b$PLA A08019.shp@data$WE <- mun2b$PEOc A08019.shp@data$EE <- mun2b$PEOr A08019.shp@data$AF <- mun2b$PAF A08019.shp@data$AS <- mun2b$PAS A08019.shp@data$OT <- mun2b$PAL colnames(A08019.shp@data) <- c("ID", "CAT", "Total pop.", "Spanish", "Latin-American", "Western Europe", "Eastern Europe", "Africa", "Asia", "Others")
  • 21. GEOLOCALIZACIÓN DE INFORMACIÓN: PLOTGOOGLEMAPS PACKAGE (VII) Para realizar nuestro mapa: 7. ### DETERMINO LOS COLORES (FORMATO HTML) CON QUE QUIERO UTILIZAR ### colores <- c("#4F9E35","#44F608","#FC9272","#FB6A4A") #4F9E35= #44F608= #FC9272= #FB6A4A= 8. ### DETERMINO EL SISTEMA DE PROYECCION GEOGRAFICA ### Para ello utilizo la función proj4string del package rgdal proj4string(A08019.shp) <- CRS("+proj=utm +zone=30N +ellps=intl +units=m +towgs84=- 87,-96,-120 +no_defs") 9. ### ESTABLEZCO EL DIRECTORIO DONDE SE GUARDAN LOS ARCHIVOS HTM Y PNG ### setwd ("C:/Users/ced/Desktop/RugBCN 2013")
  • 22. GEOLOCALIZACION DE INFORMACION: PLOTGOOGLEMAPS PACKAGE (VIII) Para realizar nuestro mapa: 10. ### HAGO MI MAPA ### A08019M <- plotGoogleMaps (A08019.shp, zcol = "CAT", colPalette = colores, streetViewControl=TRUE, strokeColor = "Black", map.width = "80%", map.height ="100%", control.width ="20%", control.height ="80%", zoom=12, fitBounds=FALSE, layerName= paste(A08019[1, c("Nom_Mun")], "2011", sep=" "), filename = paste("A08019", "htm", sep="."))
  • 23. GEOLOCALIZACION DE INFORMACION: PLOTGOOGLEMAPS PACKAGE (IX) Resultado:
  • 24. VISUALIZANDO DATOS: GOOGLEVIS PACKAGE (I) El package googleVis proporciona un nexo (interfaz) entre R y el Google Chart Tools. Las funciones del googleVis package permiten visualizar datos almacenados como data-frames en R utilizando los tipos de representación del Google Chart Tools, sin que haya necesidad de subir nuestros datos a Google. El resultado de la ejecución de una función del googleVis package es un código HTML que contiene los datos y las referencias a funciones JavaScript alojados por Google. La finalidad del googleVis package es la creación de gráficos que, además de poder ser ejecutados de forma local, puedan insertarse fácilmente en una página web. De entre los distintos tipos de representación posibles, aquí nos ocuparemos de dos. 1. Tables 2. Motion Charts Info detallada: http://cran.r-project.org/web/packages/googleVis/vignettes/googleVis.pdf
  • 25. VISUALIZANDO DATOS: GOOGLEVIS PACKAGE (II) Crear una Tabla de consulta on-line con googleVis: library (googleVis) data<- read.csv ("C:/Users/CED/Dropbox/R/DATA/PROVINCIAS_2000_2010_SEGREGACION.csv")
  • 26. VISUALIZANDO DATOS: GOOGLEVIS PACKAGE (III) Crear una Tabla de consulta on-line con googleVis: PROVINCIAS_tabla <- gvisTable(data, options=list(width=705, height=513), chartid= "PROVINCIAS") plot (PROVINCIAS_tabla) Guardamos nuestra tabla en un archivo de extensión .htm print(PROVINCIAS_tabla, file="C:/Users/ced/Desktop/RugBCN 2013/TABLA_PROVINCIAS.htm")
  • 27. VISUALIZANDO DATOS: GOOGLEVIS PACKAGE (IV) Crear una Motion Chart de consulta on-line con googleVis: BC <- gvisMotionChart(data, idvar = "Provincia", time = "Año", xvar = "[e]Disimilitud", yvar = "[g]Aislamiento", colorvar = "[d]Porcentaje nacidos extranjero", sizevar = "[a]Población total", options= list (height= 513, width= 713), chartid="GEDEM_2013") plot (BC) Guardamos nuestra tabla en un archivo de extensión .htm print(BC, file="C:/Users/ced/Desktop/RugBCN 2013/TABLA_PROVINCIAS.htm")
  • 28. VISUALIZANDO DATOS: GOOGLEVIS PACKAGE (IV) Para insertar un objeto del tipo gvis en una página web: 1. Subimos nuestro archivo de extensión .htm al servidor donde tengamos la web. 2. Utilizamos un iframe para insertarlo en nuestra página: {iframe width="715" height="700"}http://ced-nova. uab.cat/gedem/documents/SEG_PROV_ESP1.htm{/iframe} FINAL DE LA PRESENTACIÓN Agradecimientos: al Dr. Tim Riffe https://sites.google.com/site/timriffepersonal/, a Lluis Ramón por su presentación sobre mapas con R realizada en la reunión del RugBCN de 2012 http://rpubs.com/Lluis_Ramon/Presentacio_mapes_amb_R, al resto de miembros de RugBCN, a los desarrolladores de los packages utilizados, a quienes hacen preguntas en los distintos foros de usuarios de R y, sobre todo, a quienes las contestan 
  • 29. Muchas gracias por vuestra atención contacto: jgaleano@ced.uab.es http://gedemced.uab.cat GEDEM –Grup d’Estudis Demogràfics i de les Migracions @GEDEM_CED