class: inverse, center, middle <br> #### ITA (mòdul pràctic) ## Gràfics amb ggplot2: Primeres idees <br> ### Pedro J. Pérez <br><br> #### e-mail: [<svg viewBox="0 0 512 512" style="height:1em;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M464 64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zm0 48v40.805c-22.422 18.259-58.168 46.651-134.587 106.49-16.841 13.247-50.201 45.072-73.413 44.701-23.208.375-56.579-31.459-73.413-44.701C106.18 199.465 70.425 171.067 48 152.805V112h416zM48 400V214.398c22.914 18.251 55.409 43.862 104.938 82.646 21.857 17.205 60.134 55.186 103.062 54.955 42.717.231 80.509-37.199 103.053-54.947 49.528-38.783 82.032-64.401 104.947-82.653V400H48z"></path></svg>](mailto:pedro.j.perez@uv.es) [pedro.j.perez@uv.es](mailto:pedro.j.perez@uv.es) --- class: inverse, center, middle background-image: url(data:image/png;base64,#imagenes/ss_06_img_01_ggplot2-hex.png) background-position: 95% 5% background-size: 10% ## Gràfics xulos amb *ggplot2* <html><div style='float:left'></div><hr color='#EB811B' size=1px width=796px></html> #### Un dels millors (que dius!?, el MILLOR!!!) sistema gràfic del MÓN. --- background-image: url(data:image/png;base64,#imagenes/ss_06_img_01_ggplot2-hex.png) background-position: 98% 2% background-size: 5% ##### l'anàlisi gràfica és fonamental - La **anàlisi gràfica és fonamental** en presentar resultats, però també en l'anàlisi exploratòria: permet descobrir relacions entre variables, i descartar o suggerir noves preguntes sobre les dades. <img src="data:image/png;base64,#./imagenes/tt_06_img_01_explore-visualice.png" width="75%" style="display: block; margin: auto;" /> -- -------------------------------------- - R té diversos sistemes gràfics, però **usarem ggplot2** - *ggplot2* és un paquet de R per produir gràfics estadístics. Bé, en realitat **és tot un ecosistema**. Mira les seves extensions [[aquí]](https://exts.ggplot2.tidyverse.org/gallery/). - És diferent perquè té una **gramàtica subjacent**, basada en Grammar of Graphics (Wilkinson 2005). - Costa una mica (només una mica) més començar, però de seguida se'n veuen els beneficis; a més, és que **ara mateix és l'estàndard**. --- class: inverse, center, middle background-image: url(data:image/png;base64,#imagenes/ss_06_img_01_ggplot2-hex.png) background-position: 95% 5% background-size: 10% ## Primeres idees sobre *ggplot2* <html><div style='float:left'></div><hr color='#EB811B' size=1px width=796px></html> #### Primeres idees per començar a familiaritzar-nos amb *ggplot2* --- background-image: url(data:image/png;base64,#imagenes/ss_06_img_01_ggplot2-hex.png) background-position: 98% 2% background-size: 5% ##### què veiem al gràfic de baix? .pull-left[ <img src="data:image/png;base64,#slides_06_ggplot2_A_val_files/figure-html/unnamed-chunk-5-1.png" width="100%" style="display: block; margin: auto;" /> ] -- .pull-right[ <br> - gràfic de punts - gràfic de punts es representen 3 variables: - Sepal.Length al **eix X** - Petal.Length al **eix Y** - Speciesal **color dels punts** ] -- ##### Important per entendre ggplot2 [ 🌟 ] Un gràfic té 3 components principals: - les **dades** que es representaran (.orange[ggplot()] ) - un conjunt de **propietats estètiques associades a variables** del conjunt de dades. Per exemple, la posició a l'eix X està associada a la variable Sepal.Length, el color dels punts està associat als valors de la variable Species. ( .orange[aes()] ) - l'**element geomètric que es representarà**. En el nostre cas són punts (.orange[geom_point()] ), però podrien haver estat les línies (.orange[geom_line()] ) o ... --- ##### sintaxi de ggplot2 [ 🌟 ] ``` r ggplot(data = iris, aes(x = Sepal.Length, y = Petal.Length, color = Species)) + geom_point() ``` <img src="data:image/png;base64,#slides_06_ggplot2_A_val_files/figure-html/unnamed-chunk-6-1.png" width="40%" style="display: block; margin: auto;" /> -- ##### Forma més compacta d'escriure'l ``` r ggplot(data = iris, aes(x = Sepal.Length, y = Petal.Length, color = Species)) + geom_point() ``` --- ##### posant els noms de tots els arguments ##### quedaria com .... ``` r ggplot(data = iris, mapping = aes(x = Sepal.Length, y = Petal.Length, color = Species) ) + geom_point() ``` -- <img src="data:image/png;base64,#slides_06_ggplot2_A_val_files/figure-html/unnamed-chunk-9-1.png" width="58%" style="display: block; margin: auto;" /> --- count: false ##### Gráfico en slow-motion! .panel1-grafico-00-auto[ ``` r *iris ``` ] .panel2-grafico-00-auto[ ``` #> Sepal.Length Sepal.Width Petal.Length Petal.Width Species #> 1 5.1 3.5 1.4 0.2 setosa #> 2 4.9 3.0 1.4 0.2 setosa #> 3 4.7 3.2 1.3 0.2 setosa #> 4 4.6 3.1 1.5 0.2 setosa #> 5 5.0 3.6 1.4 0.2 setosa #> 6 5.4 3.9 1.7 0.4 setosa #> 7 4.6 3.4 1.4 0.3 setosa #> 8 5.0 3.4 1.5 0.2 setosa #> 9 4.4 2.9 1.4 0.2 setosa #> 10 4.9 3.1 1.5 0.1 setosa #> 11 5.4 3.7 1.5 0.2 setosa #> 12 4.8 3.4 1.6 0.2 setosa #> 13 4.8 3.0 1.4 0.1 setosa #> 14 4.3 3.0 1.1 0.1 setosa #> 15 5.8 4.0 1.2 0.2 setosa #> 16 5.7 4.4 1.5 0.4 setosa #> 17 5.4 3.9 1.3 0.4 setosa #> 18 5.1 3.5 1.4 0.3 setosa #> 19 5.7 3.8 1.7 0.3 setosa #> 20 5.1 3.8 1.5 0.3 setosa #> 21 5.4 3.4 1.7 0.2 setosa #> 22 5.1 3.7 1.5 0.4 setosa #> 23 4.6 3.6 1.0 0.2 setosa #> 24 5.1 3.3 1.7 0.5 setosa #> 25 4.8 3.4 1.9 0.2 setosa #> 26 5.0 3.0 1.6 0.2 setosa #> 27 5.0 3.4 1.6 0.4 setosa #> 28 5.2 3.5 1.5 0.2 setosa #> 29 5.2 3.4 1.4 0.2 setosa #> 30 4.7 3.2 1.6 0.2 setosa #> 31 4.8 3.1 1.6 0.2 setosa #> 32 5.4 3.4 1.5 0.4 setosa #> 33 5.2 4.1 1.5 0.1 setosa #> 34 5.5 4.2 1.4 0.2 setosa #> 35 4.9 3.1 1.5 0.2 setosa #> 36 5.0 3.2 1.2 0.2 setosa #> 37 5.5 3.5 1.3 0.2 setosa #> 38 4.9 3.6 1.4 0.1 setosa #> 39 4.4 3.0 1.3 0.2 setosa #> 40 5.1 3.4 1.5 0.2 setosa #> 41 5.0 3.5 1.3 0.3 setosa #> 42 4.5 2.3 1.3 0.3 setosa #> 43 4.4 3.2 1.3 0.2 setosa #> 44 5.0 3.5 1.6 0.6 setosa #> 45 5.1 3.8 1.9 0.4 setosa #> 46 4.8 3.0 1.4 0.3 setosa #> 47 5.1 3.8 1.6 0.2 setosa #> 48 4.6 3.2 1.4 0.2 setosa #> 49 5.3 3.7 1.5 0.2 setosa #> 50 5.0 3.3 1.4 0.2 setosa #> 51 7.0 3.2 4.7 1.4 versicolor #> 52 6.4 3.2 4.5 1.5 versicolor #> 53 6.9 3.1 4.9 1.5 versicolor #> 54 5.5 2.3 4.0 1.3 versicolor #> 55 6.5 2.8 4.6 1.5 versicolor #> 56 5.7 2.8 4.5 1.3 versicolor #> 57 6.3 3.3 4.7 1.6 versicolor #> 58 4.9 2.4 3.3 1.0 versicolor #> 59 6.6 2.9 4.6 1.3 versicolor #> 60 5.2 2.7 3.9 1.4 versicolor #> 61 5.0 2.0 3.5 1.0 versicolor #> 62 5.9 3.0 4.2 1.5 versicolor #> 63 6.0 2.2 4.0 1.0 versicolor #> 64 6.1 2.9 4.7 1.4 versicolor #> 65 5.6 2.9 3.6 1.3 versicolor #> 66 6.7 3.1 4.4 1.4 versicolor #> 67 5.6 3.0 4.5 1.5 versicolor #> 68 5.8 2.7 4.1 1.0 versicolor #> 69 6.2 2.2 4.5 1.5 versicolor #> 70 5.6 2.5 3.9 1.1 versicolor #> 71 5.9 3.2 4.8 1.8 versicolor #> 72 6.1 2.8 4.0 1.3 versicolor #> 73 6.3 2.5 4.9 1.5 versicolor #> 74 6.1 2.8 4.7 1.2 versicolor #> 75 6.4 2.9 4.3 1.3 versicolor #> 76 6.6 3.0 4.4 1.4 versicolor #> 77 6.8 2.8 4.8 1.4 versicolor #> 78 6.7 3.0 5.0 1.7 versicolor #> 79 6.0 2.9 4.5 1.5 versicolor #> 80 5.7 2.6 3.5 1.0 versicolor #> 81 5.5 2.4 3.8 1.1 versicolor #> 82 5.5 2.4 3.7 1.0 versicolor #> 83 5.8 2.7 3.9 1.2 versicolor #> 84 6.0 2.7 5.1 1.6 versicolor #> 85 5.4 3.0 4.5 1.5 versicolor #> 86 6.0 3.4 4.5 1.6 versicolor #> 87 6.7 3.1 4.7 1.5 versicolor #> 88 6.3 2.3 4.4 1.3 versicolor #> 89 5.6 3.0 4.1 1.3 versicolor #> 90 5.5 2.5 4.0 1.3 versicolor #> 91 5.5 2.6 4.4 1.2 versicolor #> 92 6.1 3.0 4.6 1.4 versicolor #> 93 5.8 2.6 4.0 1.2 versicolor #> 94 5.0 2.3 3.3 1.0 versicolor #> 95 5.6 2.7 4.2 1.3 versicolor #> 96 5.7 3.0 4.2 1.2 versicolor #> 97 5.7 2.9 4.2 1.3 versicolor #> 98 6.2 2.9 4.3 1.3 versicolor #> 99 5.1 2.5 3.0 1.1 versicolor #> 100 5.7 2.8 4.1 1.3 versicolor #> 101 6.3 3.3 6.0 2.5 virginica #> 102 5.8 2.7 5.1 1.9 virginica #> 103 7.1 3.0 5.9 2.1 virginica #> 104 6.3 2.9 5.6 1.8 virginica #> 105 6.5 3.0 5.8 2.2 virginica #> 106 7.6 3.0 6.6 2.1 virginica #> 107 4.9 2.5 4.5 1.7 virginica #> 108 7.3 2.9 6.3 1.8 virginica #> 109 6.7 2.5 5.8 1.8 virginica #> 110 7.2 3.6 6.1 2.5 virginica #> 111 6.5 3.2 5.1 2.0 virginica #> 112 6.4 2.7 5.3 1.9 virginica #> 113 6.8 3.0 5.5 2.1 virginica #> 114 5.7 2.5 5.0 2.0 virginica #> 115 5.8 2.8 5.1 2.4 virginica #> 116 6.4 3.2 5.3 2.3 virginica #> 117 6.5 3.0 5.5 1.8 virginica #> 118 7.7 3.8 6.7 2.2 virginica #> 119 7.7 2.6 6.9 2.3 virginica #> 120 6.0 2.2 5.0 1.5 virginica #> 121 6.9 3.2 5.7 2.3 virginica #> 122 5.6 2.8 4.9 2.0 virginica #> 123 7.7 2.8 6.7 2.0 virginica #> 124 6.3 2.7 4.9 1.8 virginica #> 125 6.7 3.3 5.7 2.1 virginica #> 126 7.2 3.2 6.0 1.8 virginica #> 127 6.2 2.8 4.8 1.8 virginica #> 128 6.1 3.0 4.9 1.8 virginica #> 129 6.4 2.8 5.6 2.1 virginica #> 130 7.2 3.0 5.8 1.6 virginica #> 131 7.4 2.8 6.1 1.9 virginica #> 132 7.9 3.8 6.4 2.0 virginica #> 133 6.4 2.8 5.6 2.2 virginica #> 134 6.3 2.8 5.1 1.5 virginica #> 135 6.1 2.6 5.6 1.4 virginica #> 136 7.7 3.0 6.1 2.3 virginica #> 137 6.3 3.4 5.6 2.4 virginica #> 138 6.4 3.1 5.5 1.8 virginica #> 139 6.0 3.0 4.8 1.8 virginica #> 140 6.9 3.1 5.4 2.1 virginica #> 141 6.7 3.1 5.6 2.4 virginica #> 142 6.9 3.1 5.1 2.3 virginica #> 143 5.8 2.7 5.1 1.9 virginica #> 144 6.8 3.2 5.9 2.3 virginica #> 145 6.7 3.3 5.7 2.5 virginica #> 146 6.7 3.0 5.2 2.3 virginica #> 147 6.3 2.5 5.0 1.9 virginica #> 148 6.5 3.0 5.2 2.0 virginica #> 149 6.2 3.4 5.4 2.3 virginica #> 150 5.9 3.0 5.1 1.8 virginica ``` ] --- count: false ##### Gráfico en slow-motion! .panel1-grafico-00-auto[ ``` r iris %>% *ggplot() ``` ] .panel2-grafico-00-auto[ <img src="data:image/png;base64,#slides_06_ggplot2_A_val_files/figure-html/grafico-00_auto_02_output-1.png" width="95%" style="display: block; margin: auto;" /> ] --- count: false ##### Gráfico en slow-motion! .panel1-grafico-00-auto[ ``` r iris %>% ggplot() + * aes(x = Sepal.Length) ``` ] .panel2-grafico-00-auto[ <img src="data:image/png;base64,#slides_06_ggplot2_A_val_files/figure-html/grafico-00_auto_03_output-1.png" width="95%" style="display: block; margin: auto;" /> ] --- count: false ##### Gráfico en slow-motion! .panel1-grafico-00-auto[ ``` r iris %>% ggplot() + aes(x = Sepal.Length) + * aes(y = Petal.Length) ``` ] .panel2-grafico-00-auto[ <img src="data:image/png;base64,#slides_06_ggplot2_A_val_files/figure-html/grafico-00_auto_04_output-1.png" width="95%" style="display: block; margin: auto;" /> ] --- count: false ##### Gráfico en slow-motion! .panel1-grafico-00-auto[ ``` r iris %>% ggplot() + aes(x = Sepal.Length) + aes(y = Petal.Length) + * aes(color = Species) ``` ] .panel2-grafico-00-auto[ <img src="data:image/png;base64,#slides_06_ggplot2_A_val_files/figure-html/grafico-00_auto_05_output-1.png" width="95%" style="display: block; margin: auto;" /> ] --- count: false ##### Gráfico en slow-motion! .panel1-grafico-00-auto[ ``` r iris %>% ggplot() + aes(x = Sepal.Length) + aes(y = Petal.Length) + aes(color = Species) + * geom_point() ``` ] .panel2-grafico-00-auto[ <img src="data:image/png;base64,#slides_06_ggplot2_A_val_files/figure-html/grafico-00_auto_06_output-1.png" width="95%" style="display: block; margin: auto;" /> ] <style> .panel1-grafico-00-auto { color: black; width: 38.6060606060606%; hight: 32%; float: left; padding-left: 1%; font-size: 80% } .panel2-grafico-00-auto { color: black; width: 59.3939393939394%; hight: 32%; float: left; padding-left: 1%; font-size: 80% } .panel3-grafico-00-auto { color: black; width: NA%; hight: 33%; float: left; padding-left: 1%; font-size: 80% } </style> -- <br> ##### La forma habitual(!) d'escriure'l és: ``` r ggplot(data = iris, aes(Sepal.Length, Petal.Length, color = Species)) + geom_point() ``` --- ##### IMAGINA que fan les següents instruccions. Després les executes. ``` r #- Fixa't: només hi ha 2 variables a aes() -- ggplot(data = iris, aes(x = Sepal.Length, y = Petal.Length)) + geom_point() #- Fixa't: ara fem servir geom_line() -- ggplot(data = iris, aes(x = Sepal.Length, y = Petal.Length)) + geom_line() #- Fixa't: ara fem servir 2 geom_xx() -- ggplot(data = iris, aes(x = Sepal.Length, y = Petal.Length)) + geom_point() + geom_smooth() #- Fixa't: tornem a tenir 3 variables a aes() -- ggplot(data = iris, aes(x = Sepal.Length, y = Petal.Length, color = Species)) + geom_point() #- Fixa't: ara hi ha arguments dins de geom_point() -- #- Un és `color` ggplot(data = iris, aes(x = Sepal.Length, y = Petal.Length)) + geom_point(color = "red", size = 2, alpha = 0.2) ``` --- class: inverse, center, middle background-image: url(data:image/png;base64,#imagenes/ss_06_img_01_ggplot2-hex.png) background-position: 95% 5% background-size: 10% ### Entenent una mica més *ggplot2* <html><div style='float:left'></div><hr color='#EB811B' size=1px width=796px></html> #### Ja tenim les primeres idees sobre ggplot2, ara es tracta d'aprofundir una mica perquè puguem tenir més control i flexibilitat en fer els nostres gràfics. --- ##### aprofundirem una mica més en *ggplot2* És important que vegis que aquestes 3 expressions **fan el mateix gràfic**: ``` r ggplot(data = iris, aes(Sepal.Length, Petal.Length)) + geom_point() ggplot(data = iris) + geom_point(aes(Sepal.Length, Petal.Length)) ggplot() + geom_point(data = iris, aes(Sepal.Length, Petal.Length)) ``` -- <img src="data:image/png;base64,#slides_06_ggplot2_A_val_files/figure-html/unnamed-chunk-13-1.png" width="46%" style="display: block; margin: auto;" /> <br> -- ------------------------------- - Bé, sí I què fa més? Doncs importa i mooooolt. - Això **ens donarà molta flexibilitat**/control als nostres gràfics. Ho veurem --- ##### què fan aquestes 3 expressions? ``` r ggplot(data = iris, aes(Sepal.Length, Petal.Length, color = Species)) + geom_point() + geom_smooth() ggplot(data = iris, aes(Sepal.Length, Petal.Length)) + geom_point(aes(color = Species)) + geom_smooth() ggplot(data = iris, aes(Sepal.Length, Petal.Length)) + geom_point() + geom_smooth(aes(color = Species)) ``` -- <img src="data:image/png;base64,#slides_06_ggplot2_A_val_files/figure-html/unnamed-chunk-16-1.png" width="100%" style="display: block; margin: auto;" /> --- ##### per què no funcionen aquesta expressió? <br> ``` r ggplot() + geom_point(data = iris, aes(x = Sepal.Length, y = Petal.Length)) + geom_line(aes(x = Sepal.Length, y = Petal.Length)) #> Error in `geom_line()`: #> ! Problem while computing aesthetics. #> ℹ Error occurred in the 2nd layer. #> Caused by error: #> ! objeto 'Sepal.Length' no encontrado ``` --- ##### Un exemple una mica raret ``` r #- creem iris_2 amb els lliris que no són "setosa" iris_2 <- iris %>% filter(Species != "setosa") ``` <br> ``` r #- comencem un plot ggplot() + #- fem servir geom_point() amb iris geom_point(data = iris, aes(x = Sepal.Length, y = Petal.Length, color = Species)) + #- fem servir un segon geom però amb altres dades(iris_2) geom_smooth(data = iris_2, aes(x = Sepal.Length, y = Petal.Length) ) ``` -- <img src="data:image/png;base64,#slides_06_ggplot2_A_val_files/figure-html/unnamed-chunk-20-1.png" width="60%" style="display: block; margin: auto;" /> --- ##### un exemple més - Per anar acabant amb la “filosofia”/sintaxi/gramàtica de ggplot2 **intenta imaginar** quins gràfics fan les 4 expressions de més avall. - Si no podeu, recordeu que sempre podeu executar les ordres a l'ordinador. Fixa't sobretot en la **tercera expressió** ``` r ggplot(iris, aes(Sepal.Length, Petal.Length)) + geom_point() + geom_smooth() ggplot(iris, aes(Sepal.Length, Petal.Length, color = Species)) + geom_point() + geom_smooth() ggplot(iris, aes(Sepal.Length, Petal.Length, color = Species)) + geom_point(color = "purple") + geom_smooth() ggplot(iris, aes(Sepal.Length, Petal.Length, color = Species)) + geom_point() + geom_smooth(color = "brown") ``` --- ##### *the aesthetic parameters* de geom_point() - Hem estat fent gràfics de punts amb `geom_point()`. - Per à `geom_point()` hem fet servir principalment els paràmetres/estètiques: - `x` - `y` - `color` <br> - Però també podem fer servir: - `shape`, `fill`, `alpha` y `size` <br> - Vegem-ho --- count: false ##### parámetros/estéticas de geom_point()! .panel1-grafico-01-auto[ ``` r #- les estètiques X i Y són necessàries #- per fer un gràfic de punts *ggplot(data = iris, * aes(x = Sepal.Length, * y = Petal.Length)) ``` ] .panel2-grafico-01-auto[ <img src="data:image/png;base64,#slides_06_ggplot2_A_val_files/figure-html/grafico-01_auto_01_output-1.png" width="95%" style="display: block; margin: auto;" /> ] --- count: false ##### parámetros/estéticas de geom_point()! .panel1-grafico-01-auto[ ``` r #- les estètiques X i Y són necessàries #- per fer un gràfic de punts ggplot(data = iris, aes(x = Sepal.Length, y = Petal.Length)) + #- l'element geomètric: punts * geom_point() ``` ] .panel2-grafico-01-auto[ <img src="data:image/png;base64,#slides_06_ggplot2_A_val_files/figure-html/grafico-01_auto_02_output-1.png" width="95%" style="display: block; margin: auto;" /> ] --- count: false ##### parámetros/estéticas de geom_point()! .panel1-grafico-01-auto[ ``` r #- les estètiques X i Y són necessàries #- per fer un gràfic de punts ggplot(data = iris, aes(x = Sepal.Length, y = Petal.Length)) + #- l'element geomètric: punts geom_point() + #- color dins d' aes associada a Species * geom_point(aes(color = Species)) ``` ] .panel2-grafico-01-auto[ <img src="data:image/png;base64,#slides_06_ggplot2_A_val_files/figure-html/grafico-01_auto_03_output-1.png" width="95%" style="display: block; margin: auto;" /> ] --- count: false ##### parámetros/estéticas de geom_point()! .panel1-grafico-01-auto[ ``` r #- les estètiques X i Y són necessàries #- per fer un gràfic de punts ggplot(data = iris, aes(x = Sepal.Length, y = Petal.Length)) + #- l'element geomètric: punts geom_point() + #- color dins d' aes associada a Species geom_point(aes(color = Species)) + #- color fora de aes * geom_point(color = "purple") ``` ] .panel2-grafico-01-auto[ <img src="data:image/png;base64,#slides_06_ggplot2_A_val_files/figure-html/grafico-01_auto_04_output-1.png" width="95%" style="display: block; margin: auto;" /> ] --- count: false ##### parámetros/estéticas de geom_point()! .panel1-grafico-01-auto[ ``` r #- les estètiques X i Y són necessàries #- per fer un gràfic de punts ggplot(data = iris, aes(x = Sepal.Length, y = Petal.Length)) + #- l'element geomètric: punts geom_point() + #- color dins d' aes associada a Species geom_point(aes(color = Species)) + #- color fora de aes geom_point(color = "purple") ``` ] .panel2-grafico-01-auto[ <img src="data:image/png;base64,#slides_06_ggplot2_A_val_files/figure-html/grafico-01_auto_05_output-1.png" width="95%" style="display: block; margin: auto;" /> ] <style> .panel1-grafico-01-auto { color: black; width: 58.8%; hight: 32%; float: left; padding-left: 1%; font-size: 80% } .panel2-grafico-01-auto { color: black; width: 39.2%; hight: 32%; float: left; padding-left: 1%; font-size: 80% } .panel3-grafico-01-auto { color: black; width: NA%; hight: 33%; float: left; padding-left: 1%; font-size: 80% } </style> --- count: false ##### más estéticas de geom_point() .panel1-grafico-02-auto[ ``` r #- les estètiques X i Y són necessàries #- per fer un gràfic de punts *ggplot(data = iris, * aes(x = Sepal.Length, * y = Petal.Length)) ``` ] .panel2-grafico-02-auto[ <img src="data:image/png;base64,#slides_06_ggplot2_A_val_files/figure-html/grafico-02_auto_01_output-1.png" width="95%" style="display: block; margin: auto;" /> ] --- count: false ##### más estéticas de geom_point() .panel1-grafico-02-auto[ ``` r #- les estètiques X i Y són necessàries #- per fer un gràfic de punts ggplot(data = iris, aes(x = Sepal.Length, y = Petal.Length)) + #- shape dins de aes , size = 3 fora de aes * geom_point(aes(shape = Species), * size = 3) ``` ] .panel2-grafico-02-auto[ <img src="data:image/png;base64,#slides_06_ggplot2_A_val_files/figure-html/grafico-02_auto_02_output-1.png" width="95%" style="display: block; margin: auto;" /> ] --- count: false ##### más estéticas de geom_point() .panel1-grafico-02-auto[ ``` r #- les estètiques X i Y són necessàries #- per fer un gràfic de punts ggplot(data = iris, aes(x = Sepal.Length, y = Petal.Length)) + #- shape dins de aes , size = 3 fora de aes geom_point(aes(shape = Species), size = 3) + #- shape = 4, size = 6: fora de aes * geom_point(shape = 4, * size = 6) ``` ] .panel2-grafico-02-auto[ <img src="data:image/png;base64,#slides_06_ggplot2_A_val_files/figure-html/grafico-02_auto_03_output-1.png" width="95%" style="display: block; margin: auto;" /> ] <style> .panel1-grafico-02-auto { color: black; width: 58.8%; hight: 32%; float: left; padding-left: 1%; font-size: 80% } .panel2-grafico-02-auto { color: black; width: 39.2%; hight: 32%; float: left; padding-left: 1%; font-size: 80% } .panel3-grafico-02-auto { color: black; width: NA%; hight: 33%; float: left; padding-left: 1%; font-size: 80% } </style> --- ##### veurem alguna vegada altres gràfics? - SÍ!!!! però encara falta una mica, hem de veure més coses (i sí, usant `iris`). - Si no pots esperar-te vés a està [Graph gallery](https://exts.ggplot2.tidyverse.org/gallery/) <br> -- ##### per fer altres gràfics haurem de fer servir altres **geom_xx()** - **Per eixemple**: geom_line(), geom_bar(), geom_col(), geom_density(), geom_path(), geon_map(), geom_raster(), geom_rug() ... i molts mès <br> -- ##### *the aesthetic parameters* de cada geom_xx() - Quan comencem a fer altres tipus de gràfics serà útil conèixer quins paràmetres té, que aesthetics admet cada `geom_xx()`. - Podrem veure'ls consultant l'ajuda de cada `geom`, però també les pots veure [aquí](https://www.yihanwu.ca/post/geoms-and-aesthetic-parameters/) - Per exemple, **geom_point()** ja sabem que admet les següents "estètiques": x, y, color, size, shape, fill, alpha ... --- class: inverse, center, middle background-image: url(data:image/png;base64,#imagenes/ss_06_img_01_ggplot2-hex.png) background-position: 95% 5% background-size: 10% ### Mès elements de *ggplot2* <html><div style='float:left'></div><hr color='#EB811B' size=1px width=796px></html> ###### Com podeu imaginar, encara hem de veure més elements de ggplot2: els títols i llegendes, els eixos, el tema, coordenades, etc… anem a això!! --- ##### mès elements d'un ggplot() - Ja hem presentat els principals elements dels gràfics fets amb ggplot2, però és evident que **un gràfic té més elements**. - Lògicament, **cal conèixer-los una mica** per poder ajustar els gràfics a les nostres necessitats i millorar-ne la qualitat. -- -------------------- Veurem una mica dels següents elements: - Títols del gràfic - Themes - Small multiples (o Facetting) - Anotacions - Eixos - Escales - Stats (transformacions estadístiques) - Position adjustments - Coordenades ---------------------------------- .bg-washed-green.b--dark-green.ba.bw2.br3.shadow-5.ph4.mt5[ Será en las siguientes slides]