class: center, middle, inverse, title-slide # Herramientas Cuantitativas para el Análisis Político ## [CP44] Maestría en Ciencia Política ### Juan Pablo Ruiz Nicolini ### Universidad Torcuato Di Tella ### 20/10/2020 --- exclude: true --- class: middle, center ## SESIÓN 6 ### Data Viz (I) #### `ggplot2` y la _Gramática de los Gráficos_ #### [
/MetodosCiPol/](https://tuqmano.github.io/MetodosCiPol/) #### [
/MetodosCiPol/](https://github.com/TuQmano/MetodosCiPol) --- class: inverse # Ejercicios ### 1). Cómo _tideamos_ las direcciones? -- ### 2). Cómo hacemos *long* las elecciones con iteraciones? --- # Garmática de los Gráficos >**Un conjunto formal de reglas para la producción de gráficos estadísticos** > **Se basa en la definición de capas** **Leland Wilkinson** -- * Estadística y Ciencia de Computación `+` -- * Experto en Viz (_SPSS, Tableau_) `+` -- `->` _**Grammar of Graphics**_ (1999) --- ##
Referencias (I) En la [bibliografía](https://tuqmano.github.io/MetodosCiPol/bibliografia.html) del curso se destacan tres libros relevantes: - `ggplot2`: _**Elegant Graphics for Data Analysis**_ (**H. Wickham**) es el material principal con definiciones de la aplicación de la _gramática de gráficos_ en `R`. -- - _**Data Visualization: A Pracitcal Introduction**_ (**K. Heley**) disute principios sobre visualización de datos, y consejos práctivos de su aplicación acompañado de código en `R` par reproducirlos. -- - En _**Fundamentals of Data Visualization**_ (**Claus Wilke**) presentan argumentos y consejos para realizar visualizaciones profesionales que representen correctamente los datos. --- ##
Referencias (II) 1. _Visualización de Datos (Intro)_, en "[R para Ciencia de Datos](https://es.r4ds.hadley.nz/visualizaci%C3%B3n-de-datos.html#introducci%C3%B3n-1)" (Wickham y Grolemnud). 2. [_ModernDive_](https://moderndive.com/2-viz.html) 3. [(a) Urdinez y Cruz](https://arcruz0.github.io/libroadp/dataviz.html); [(b) Montané](https://martinmontane.github.io/CienciaDeDatosBook/visualizaciones-de-datos-en-r.html); y [(c) Vázquez Brust](https://bitsandbricks.github.io/ciencia_de_datos_gente_sociable/visualizaci%C3%B3n.html). --- background-image: url(https://github.com/rstudio/hex-stickers/raw/master/PNG/ggplot2.png) background-position: 95% 5% background-size: 10% # Data Viz (I) #### La **g**ramatica de los **g**ráficos en `R` [
`{ggplot2}`](https://ggplot2.tidyverse.org/index.html) ### _Dibujando por capas_ <img src="http://mikelmadina.com/images/lgg_layers_mal.jpg" width="300" /> -- **
** [_Plotting Anything with `ggplot2`_](https://www.youtube.com/watch?v=h29g21z0a68) - Thomas Lin Pedersen. --- background-image: url(https://github.com/rstudio/hex-stickers/raw/master/PNG/ggplot2.png) background-position: 95% 5% background-size: 10% # Data Viz (I) ### RECETA BASICA #### **VIZ COMO PARTE DEL ANALISIS EXPLORATORIO DE DATOS (_EDA_)** ```r ggplot(data = <DATA>) + <GEOM_FUNCTION>(mapping = aes(<MAPPINGS>)) ``` --- background-image: url(https://cienciadedatos.github.io/datos/reference/figures/logo.png) background-position: 95% 5% background-size: 10% # Data Viz (I) ### `millas` del [paquete
`{datos}`](https://cienciadedatos.github.io/datos/) ```r library(datos) as.tibble(millas) ## # A tibble: 234 x 11 ## fabricante modelo cilindrada anio cilindros transmision traccion ciudad ## <chr> <chr> <dbl> <int> <int> <chr> <chr> <int> ## 1 audi a4 1.8 1999 4 auto(l5) d 18 ## 2 audi a4 1.8 1999 4 manual(m5) d 21 ## 3 audi a4 2 2008 4 manual(m6) d 20 ## 4 audi a4 2 2008 4 auto(av) d 21 ## 5 audi a4 2.8 1999 6 auto(l5) d 16 ## 6 audi a4 2.8 1999 6 manual(m5) d 18 ## 7 audi a4 3.1 2008 6 auto(av) d 18 ## 8 audi a4 qu~ 1.8 1999 4 manual(m5) 4 18 ## 9 audi a4 qu~ 1.8 1999 4 auto(l5) 4 16 ## 10 audi a4 qu~ 2 2008 4 manual(m6) 4 20 ## # ... with 224 more rows, and 3 more variables: autopista <int>, ## # combustible <chr>, clase <chr> ``` --- background-image: url(https://github.com/rstudio/hex-stickers/raw/master/PNG/ggplot2.png) background-position: 95% 5% background-size: 10% # Data Viz (I) ```r ggplot(data = millas) + # DATASET geom_point(mapping = aes(x = cilindrada, # MAPEO DE VARIABLES y = autopista)) ``` <img src="Clase6_files/figure-html/unnamed-chunk-4-1.png" width="300" /> --- background-image: url(https://github.com/rstudio/hex-stickers/raw/master/PNG/ggplot2.png) background-position: 95% 5% background-size: 10% # Data Viz (I) ```r ggplot(data = millas) + geom_point(mapping = aes(x = cilindrada, y = autopista, # 'Esteticas' * colour = clase)) ``` <img src="Clase6_files/figure-html/unnamed-chunk-5-1.png" width="50%" /> --- background-image: url(https://github.com/rstudio/hex-stickers/raw/master/PNG/ggplot2.png) background-position: 95% 5% background-size: 10% # Data Viz (I) ```r ggplot(data = millas) + geom_point(mapping = aes(x = cilindrada, y = autopista, * colour = "blue")) ``` <img src="Clase6_files/figure-html/unnamed-chunk-6-1.png" width="50%" /> --- background-image: url(https://github.com/rstudio/hex-stickers/raw/master/PNG/ggplot2.png) background-position: 95% 5% background-size: 10% # Data Viz (I) ```r ggplot(data = millas) + geom_point(mapping = aes(x = cilindrada, y = autopista), * colour = "blue") ``` <img src="Clase6_files/figure-html/unnamed-chunk-7-1.png" width="50%" /> --- background-image: url(https://github.com/rstudio/hex-stickers/raw/master/PNG/ggplot2.png) background-position: 95% 5% background-size: 10% # Data Viz (I) Cada geometría tiene parámetros específicos que pueden ser ajustados. El **color** es uno de ellos. -- ### SHAPE A `geom_point` podemos asignarle una forma particular en función de valores de alguna variable, por ejemplo: <img src="https://es.r4ds.hadley.nz/03-visualize_files/figure-html/unnamed-chunk-8-1.png" width="300" /> --- background-image: url(https://github.com/rstudio/hex-stickers/raw/master/PNG/ggplot2.png) background-position: 95% 5% background-size: 10% # Data Viz (I) ## FACETAS ```r ggplot(data = millas) + geom_point(mapping = aes(x = cilindrada, y = autopista)) + * facet_wrap(~ clase, nrow = 2) ``` <img src="Clase6_files/figure-html/unnamed-chunk-9-1.png" width="45%" /> --- background-image: url(https://github.com/rstudio/hex-stickers/raw/master/PNG/ggplot2.png) background-position: 95% 5% background-size: 10% # Data Viz (I) ### GEOMETRIAS <img src="Clase6_files/figure-html/unnamed-chunk-10-1.png" width="35%" /><img src="Clase6_files/figure-html/unnamed-chunk-10-2.png" width="35%" /> -- ```r # izquierda ggplot(data = millas) + * geom_point(mapping = aes(x = cilindrada, y = autopista)) # derecha ggplot(data = millas) + * geom_smooth(mapping = aes(x = cilindrada, y = autopista)) ``` --- background-image: url(https://github.com/rstudio/hex-stickers/raw/master/PNG/ggplot2.png) background-position: 95% 5% background-size: 10% # Data Viz (I) ```r ggplot(data = millas) + geom_point(mapping = aes(x = cilindrada, y = autopista)) + geom_smooth(mapping = aes(x = cilindrada, y = autopista)) ``` <img src="Clase6_files/figure-html/unnamed-chunk-12-1.png" width="35%" /> **Integramos los dos `geom_` como capas de un mismo gráfico** -- ### Que notan en el código? --- background-image: url(https://github.com/rstudio/hex-stickers/raw/master/PNG/ggplot2.png) background-position: 95% 5% background-size: 10% # Data Viz (I) **Podemos asignar parametros _globales_ para todo el gráfico (que pueden ser sobrescritos en capas siguientes)** ```r ggplot(data = millas, aes(x = cilindrada, y = autopista)) + geom_point() + geom_smooth() ``` <img src="Clase6_files/figure-html/unnamed-chunk-13-1.png" width="300" /> --- background-image: url(https://github.com/rstudio/hex-stickers/raw/master/PNG/ggplot2.png) background-position: 95% 5% background-size: 10% # Data Viz (I) ```r ggplot(millas, aes(cilindrada, autopista)) + geom_point() + geom_smooth() ``` <img src="Clase6_files/figure-html/unnamed-chunk-14-1.png" width="300" /> **Se pueden elidir los nombres de parámetros** -- **
** Más detalle en esta [`Intro a {ggplot}`]("https://es.r4ds.hadley.nz/visualizaci%C3%B3n-de-datos.html") --- background-image: url(https://github.com/rstudio/hex-stickers/raw/master/PNG/ggplot2.png) background-position: 95% 5% background-size: 10% # Data Viz (I) <img src="Clase6_files/figure-html/unnamed-chunk-15-1.png" width="70%" /> --- class: center, middle # _live coding_ con {polAr}