-
Notifications
You must be signed in to change notification settings - Fork 4
/
14-créer-des-tableaux-avec-kable.Rmd
69 lines (53 loc) · 2.85 KB
/
14-créer-des-tableaux-avec-kable.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# Créer des tableaux avec kable et kable extra
Kable permet de créer des tableaux de diffusion très simplement.
Une très bonne documentation en anglais peut se trouver [ici](https://cran.r-project.org/web/packages/kableExtra/vignettes/awesome_table_in_html.html)
Ci-dessous un exemple. On reprend les données utilisées pour le diagramme barre.
```{r kabble_1}
ODD_indicateur311 %>%
filter(Type_Zone != "Pays",
Age_group == "All age ranges or no breakdown by age",
Sex == "Both sexes or no breakdown by sex",
Location == "Total (national level)",
is.na(Value_type)
) %>%
group_by(Country_or_Area_Code) %>%
filter(Year == max(Year)) %>%
ungroup %>%
select(Country_or_Area_Name, Year, Value) %>%
setNames(c("Zone", "Année", "Nombre de décès pour 100 000 Naissance")) %>%
kable("html", caption = "Mortalité de la mère à la naissance pour quelques grandes zones du globe") %>%
kable_styling(bootstrap_options = c("striped", "hover")) %>%
row_spec(1, bold = T, color = "white", background = "grey") %>%
add_indent(c(2:5))
```
Description des fonctions utilisées :
- ***setNames()*** permet de définir les libellés de colonnes ;
- ***kable("html")*** permet de produire une sortie html du tableau, l'option caption définit le titre ;
- ***kable_styling()*** permet de mettre un thème à notre tableau, ici on lui dit qu'on veut un tableau avec des lignes dont les couleurs alternent entre blanc et gris et un effet de surbrillance au passage de la souris ;
- ***row_spec()*** permet de définir des attributs particuliers pour des lignes. Ici, on lui dit qu'on veut une ligne 1 avec du gras, un fond gris et une police de couleur blanche. L'équivalent pour les colonnes est ***column_spec()***;
- ***add_indent()*** permet de définir sur un vecteur de lignes (ici les lignes 2 à 5) une indentation.
## Sauvegarde
Le tableau ainsi produit peut être sauvegardé sous plusieurs formats (html, png, pdf, etc..) grâce à la fonction ***save_kable***.
Cette fonction nécessite le chargement du package ***kableExtra***.
```{r kabble_2}
ODD_indicateur311 %>%
filter(Type_Zone != "Pays",
Age_group == "All age ranges or no breakdown by age",
Sex == "Both sexes or no breakdown by sex",
Location == "Total (national level)",
is.na(Value_type)
) %>%
group_by(Country_or_Area_Code) %>%
filter(Year == max(Year)) %>%
ungroup %>%
select(Country_or_Area_Name, Year, Value) %>%
setNames(c("Zone", "Année", "Nombre de décès pour 100 000 Naissance")) %>%
kable("html", caption = "Mortalité de la mère à la naissance pour quelques grandes zones du globe") %>%
kable_styling(bootstrap_options = c("striped", "hover")) %>%
row_spec(1, bold = T, color = "white", background = "grey") %>%
add_indent(c(2:5)) %>%
save_kable("montableau.png")
```
## Exercice 8
```{r mod5_exo8, child=charge_exo('m5', 'exo8.rmd'), echo=FALSE}
```