SlideShare una empresa de Scribd logo
1 de 29
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

Más contenido relacionado

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

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
 
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 basicoJoseph H. Werle Ccoicca
 
Curso sig basico_i
Curso sig basico_iCurso sig basico_i
Curso sig basico_imonasio
 
Curso sig basico_i
Curso sig basico_iCurso sig basico_i
Curso sig basico_imonasio
 
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 OpenStreetMapJesús Gómez
 
Manual arcgis basico
Manual arcgis basicoManual arcgis basico
Manual arcgis basicoJACK5G
 
Manual arcgis basico
Manual arcgis basicoManual arcgis basico
Manual arcgis basicoGramsa
 
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
 
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.pdfMaxwillgonzalesllere
 

Similar a 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
 

Más de 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 interculturalitatGEDEM 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 candelianaGEDEM 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 GironaGEDEM 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_diversitatGEDEM CED
 

Más de 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
 

Último

Novelas Turcas vs Series de EUA en audiencia (2024).pdf
Novelas Turcas vs Series de EUA en audiencia  (2024).pdfNovelas Turcas vs Series de EUA en audiencia  (2024).pdf
Novelas Turcas vs Series de EUA en audiencia (2024).pdfJC Díaz Herrera
 
Posiciones en el IDH global de EUA (1950-2024).pdf
Posiciones en el IDH global de EUA (1950-2024).pdfPosiciones en el IDH global de EUA (1950-2024).pdf
Posiciones en el IDH global de EUA (1950-2024).pdfJC Díaz Herrera
 
2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdf
2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdf2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdf
2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdfAnaBelindaArmellonHi
 
SUNEDU - Superintendencia Nacional de Educación superior Universitaria
SUNEDU - Superintendencia Nacional de Educación superior UniversitariaSUNEDU - Superintendencia Nacional de Educación superior Universitaria
SUNEDU - Superintendencia Nacional de Educación superior Universitariachayananazcosimeon
 
PANTEÓN DE Paris en historia de la arquitectura
PANTEÓN DE Paris en historia de la arquitecturaPANTEÓN DE Paris en historia de la arquitectura
PANTEÓN DE Paris en historia de la arquitecturaRosaHurtado26
 
CNEB-CURRICULO NACIONAL DE EDUCACION BASICA
CNEB-CURRICULO NACIONAL DE EDUCACION BASICACNEB-CURRICULO NACIONAL DE EDUCACION BASICA
CNEB-CURRICULO NACIONAL DE EDUCACION BASICAYOSHELINSARAIMAMANIS2
 
Data Warehouse.gestion de bases de datos
Data Warehouse.gestion de bases de datosData Warehouse.gestion de bases de datos
Data Warehouse.gestion de bases de datosssuser948499
 
Posiciones del IDH a nivel global en México (1982-2024).pdf
Posiciones del IDH a nivel global en México (1982-2024).pdfPosiciones del IDH a nivel global en México (1982-2024).pdf
Posiciones del IDH a nivel global en México (1982-2024).pdfJC Díaz Herrera
 
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdfREPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdfIrapuatoCmovamos
 
Unidad 3 Elementos y compuestos. Física y química
Unidad 3 Elementos y compuestos. Física y químicaUnidad 3 Elementos y compuestos. Física y química
Unidad 3 Elementos y compuestos. Física y químicaSilvia García
 
Las marcas automotrices con más ventas de vehículos (2024).pdf
Las marcas automotrices con más ventas de vehículos (2024).pdfLas marcas automotrices con más ventas de vehículos (2024).pdf
Las marcas automotrices con más ventas de vehículos (2024).pdfJC Díaz Herrera
 
Las familias más ricas del sionismo en el siglo XXI.pdf
Las familias más ricas del sionismo en el siglo XXI.pdfLas familias más ricas del sionismo en el siglo XXI.pdf
Las familias más ricas del sionismo en el siglo XXI.pdfJC Díaz Herrera
 
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdfREPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdfIrapuatoCmovamos
 
Evolución de la fortuna de la familia Slim (1994-2024).pdf
Evolución de la fortuna de la familia Slim (1994-2024).pdfEvolución de la fortuna de la familia Slim (1994-2024).pdf
Evolución de la fortuna de la familia Slim (1994-2024).pdfJC Díaz Herrera
 
La importancia de las pruebas de producto para tu empresa
La importancia de las pruebas de producto para tu empresaLa importancia de las pruebas de producto para tu empresa
La importancia de las pruebas de producto para tu empresamerca6
 
Los_países_con_la_mayor_cantidad_de_rascacielos (2023).pdf
Los_países_con_la_mayor_cantidad_de_rascacielos (2023).pdfLos_países_con_la_mayor_cantidad_de_rascacielos (2023).pdf
Los_países_con_la_mayor_cantidad_de_rascacielos (2023).pdfJC Díaz Herrera
 
Industria musical de EUA vs Industria musical Corea del Sur (2024).pdf
Industria musical de EUA vs Industria musical Corea del Sur (2024).pdfIndustria musical de EUA vs Industria musical Corea del Sur (2024).pdf
Industria musical de EUA vs Industria musical Corea del Sur (2024).pdfJC Díaz Herrera
 
Premios_nobel_por_grupo_racial_ (2024).pdf
Premios_nobel_por_grupo_racial_ (2024).pdfPremios_nobel_por_grupo_racial_ (2024).pdf
Premios_nobel_por_grupo_racial_ (2024).pdfJC Díaz Herrera
 
Familias sionistas dentro de los 10 clanes familiares más ricos por regiones ...
Familias sionistas dentro de los 10 clanes familiares más ricos por regiones ...Familias sionistas dentro de los 10 clanes familiares más ricos por regiones ...
Familias sionistas dentro de los 10 clanes familiares más ricos por regiones ...JC Díaz Herrera
 
Familias más ricas de países de AL en inicio de su hegemonía (2024).pdf
Familias más ricas de países de AL en inicio de su hegemonía (2024).pdfFamilias más ricas de países de AL en inicio de su hegemonía (2024).pdf
Familias más ricas de países de AL en inicio de su hegemonía (2024).pdfJC Díaz Herrera
 

Último (20)

Novelas Turcas vs Series de EUA en audiencia (2024).pdf
Novelas Turcas vs Series de EUA en audiencia  (2024).pdfNovelas Turcas vs Series de EUA en audiencia  (2024).pdf
Novelas Turcas vs Series de EUA en audiencia (2024).pdf
 
Posiciones en el IDH global de EUA (1950-2024).pdf
Posiciones en el IDH global de EUA (1950-2024).pdfPosiciones en el IDH global de EUA (1950-2024).pdf
Posiciones en el IDH global de EUA (1950-2024).pdf
 
2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdf
2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdf2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdf
2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdf
 
SUNEDU - Superintendencia Nacional de Educación superior Universitaria
SUNEDU - Superintendencia Nacional de Educación superior UniversitariaSUNEDU - Superintendencia Nacional de Educación superior Universitaria
SUNEDU - Superintendencia Nacional de Educación superior Universitaria
 
PANTEÓN DE Paris en historia de la arquitectura
PANTEÓN DE Paris en historia de la arquitecturaPANTEÓN DE Paris en historia de la arquitectura
PANTEÓN DE Paris en historia de la arquitectura
 
CNEB-CURRICULO NACIONAL DE EDUCACION BASICA
CNEB-CURRICULO NACIONAL DE EDUCACION BASICACNEB-CURRICULO NACIONAL DE EDUCACION BASICA
CNEB-CURRICULO NACIONAL DE EDUCACION BASICA
 
Data Warehouse.gestion de bases de datos
Data Warehouse.gestion de bases de datosData Warehouse.gestion de bases de datos
Data Warehouse.gestion de bases de datos
 
Posiciones del IDH a nivel global en México (1982-2024).pdf
Posiciones del IDH a nivel global en México (1982-2024).pdfPosiciones del IDH a nivel global en México (1982-2024).pdf
Posiciones del IDH a nivel global en México (1982-2024).pdf
 
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdfREPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
 
Unidad 3 Elementos y compuestos. Física y química
Unidad 3 Elementos y compuestos. Física y químicaUnidad 3 Elementos y compuestos. Física y química
Unidad 3 Elementos y compuestos. Física y química
 
Las marcas automotrices con más ventas de vehículos (2024).pdf
Las marcas automotrices con más ventas de vehículos (2024).pdfLas marcas automotrices con más ventas de vehículos (2024).pdf
Las marcas automotrices con más ventas de vehículos (2024).pdf
 
Las familias más ricas del sionismo en el siglo XXI.pdf
Las familias más ricas del sionismo en el siglo XXI.pdfLas familias más ricas del sionismo en el siglo XXI.pdf
Las familias más ricas del sionismo en el siglo XXI.pdf
 
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdfREPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
 
Evolución de la fortuna de la familia Slim (1994-2024).pdf
Evolución de la fortuna de la familia Slim (1994-2024).pdfEvolución de la fortuna de la familia Slim (1994-2024).pdf
Evolución de la fortuna de la familia Slim (1994-2024).pdf
 
La importancia de las pruebas de producto para tu empresa
La importancia de las pruebas de producto para tu empresaLa importancia de las pruebas de producto para tu empresa
La importancia de las pruebas de producto para tu empresa
 
Los_países_con_la_mayor_cantidad_de_rascacielos (2023).pdf
Los_países_con_la_mayor_cantidad_de_rascacielos (2023).pdfLos_países_con_la_mayor_cantidad_de_rascacielos (2023).pdf
Los_países_con_la_mayor_cantidad_de_rascacielos (2023).pdf
 
Industria musical de EUA vs Industria musical Corea del Sur (2024).pdf
Industria musical de EUA vs Industria musical Corea del Sur (2024).pdfIndustria musical de EUA vs Industria musical Corea del Sur (2024).pdf
Industria musical de EUA vs Industria musical Corea del Sur (2024).pdf
 
Premios_nobel_por_grupo_racial_ (2024).pdf
Premios_nobel_por_grupo_racial_ (2024).pdfPremios_nobel_por_grupo_racial_ (2024).pdf
Premios_nobel_por_grupo_racial_ (2024).pdf
 
Familias sionistas dentro de los 10 clanes familiares más ricos por regiones ...
Familias sionistas dentro de los 10 clanes familiares más ricos por regiones ...Familias sionistas dentro de los 10 clanes familiares más ricos por regiones ...
Familias sionistas dentro de los 10 clanes familiares más ricos por regiones ...
 
Familias más ricas de países de AL en inicio de su hegemonía (2024).pdf
Familias más ricas de países de AL en inicio de su hegemonía (2024).pdfFamilias más ricas de países de AL en inicio de su hegemonía (2024).pdf
Familias más ricas de países de AL en inicio de su hegemonía (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