4 Écriture du contenu avec Bookdown
Une fois la structure du projet en place, tu peux commencer à écrire les chapitres de ton livre. Bookdown repose sur R Markdown, un langage simple et puissant pour mélanger du texte, des équations, du code et des résultats dans un seul document.
4.1 Syntaxe Markdown (rappel rapide)
Tu peux structurer ton texte avec une syntaxe légère :
#
: Titre de chapitre (niveau 1)##
,###
: Sous-sections (niveaux 2 et 3)*italique*
ou_italique_
**gras**
ou__gras__
> citation
-
ou*
pour des listes à puces
1.
pour des listes numérotées
`code`
pour du code en ligne
Pour chaque chapitre, utilise un seul titre de niveau #
au début du fichier .Rmd
pour qu’il soit reconnu comme un chapitre à part entière.
4.1.1 Blocs de code R (chunks)
Tu peux insérer du code exécutable en R dans des blocs appelés chunks :
## mpg cyl disp hp drat wt
## Min. :10.40 Min. :4.000 Min. : 71.1 Min. : 52.0 Min. :2.760 Min. :1.513
## 1st Qu.:15.43 1st Qu.:4.000 1st Qu.:120.8 1st Qu.: 96.5 1st Qu.:3.080 1st Qu.:2.581
## Median :19.20 Median :6.000 Median :196.3 Median :123.0 Median :3.695 Median :3.325
## Mean :20.09 Mean :6.188 Mean :230.7 Mean :146.7 Mean :3.597 Mean :3.217
## 3rd Qu.:22.80 3rd Qu.:8.000 3rd Qu.:326.0 3rd Qu.:180.0 3rd Qu.:3.920 3rd Qu.:3.610
## Max. :33.90 Max. :8.000 Max. :472.0 Max. :335.0 Max. :4.930 Max. :5.424
## qsec vs am gear carb
## Min. :14.50 Min. :0.0000 Min. :0.0000 Min. :3.000 Min. :1.000
## 1st Qu.:16.89 1st Qu.:0.0000 1st Qu.:0.0000 1st Qu.:3.000 1st Qu.:2.000
## Median :17.71 Median :0.0000 Median :0.0000 Median :4.000 Median :2.000
## Mean :17.85 Mean :0.4375 Mean :0.4062 Mean :3.688 Mean :2.812
## 3rd Qu.:18.90 3rd Qu.:1.0000 3rd Qu.:1.0000 3rd Qu.:4.000 3rd Qu.:4.000
## Max. :22.90 Max. :1.0000 Max. :1.0000 Max. :5.000 Max. :8.000
- Les résultats (textes, graphiques, tableaux) sont automatiquement intégrés dans le livre.
- Tu peux ajouter des options comme
echo=FALSE
,fig.width
,message=FALSE
, etc.
Pour aller plus loin tu peux te réferrer au travail de nos camarades sur le thème : Rmarkdown
4.2 Figures et tableaux
4.2.1 Figures
Tu peux générer des graphiques avec ggplot2
, plot()
, etc., et leur associer une légende :

Figure 4.1: Exemple de graphique
Bookdown numérote automatiquement les figures et permet de les référencer dans le texte avec \@ref(fig:plot-example)
.
4.2.2 Tableaux
Tu peux créer des tableaux élégants avec :
knitr::kable()
(basique)gt::gt()
(avancé)kableExtra
(pour plus de mise en forme)
Sepal.Length | Sepal.Width | Petal.Length | Petal.Width | Species |
---|---|---|---|---|
5.1 | 3.5 | 1.4 | 0.2 | setosa |
4.9 | 3.0 | 1.4 | 0.2 | setosa |
4.7 | 3.2 | 1.3 | 0.2 | setosa |
4.6 | 3.1 | 1.5 | 0.2 | setosa |
5.0 | 3.6 | 1.4 | 0.2 | setosa |
5.4 | 3.9 | 1.7 | 0.4 | setosa |
Comme les figures, tu peux les référencer dans le texte : \@ref(tab:tab-example)
.
4.2.3 Mathématiques et équations
Bookdown permet d’écrire des formules mathématiques en LaTeX :
- Inline :
\( E = mc^2 \)
- Bloc centré :
$$ E = mc^2 $$
Tu peux aussi numéroter une équation pour y faire référence :
$$
E = mc^2 (\#eq:energie)
$$
Comme vu en \@ref(eq:energie), cette équation exprime...
4.3 Citations bibliographiques
Bookdown prend en charge les références bibliographiques grâce à Pandoc et au format BibTeX. Cela te permet de citer des articles, des livres ou des sources web de manière dynamique, avec une mise en forme automatique.
4.3.1 1. Créer un fichier .bib
Commence par créer un fichier texte portant l’extension .bib
(qui est souvent généré automatiquement sous le nom debook.bib
) qui contient tes références bibliographiques au format BibTeX.
Voici un exemple de contenu typique dans book.bib
:
@book{xie2016bookdown,
title = {bookdown: Authoring Books and Technical Documents with R Markdown},
author = {Yihui Xie},
year = {2016},
publisher = {Chapman and Hall/CRC},
url = {https://bookdown.org/yihui/bookdown/}
}
Tu peux générer ce fichier à partir de Zotero, Google Scholar, ou d’autres outils de gestion bibliographique.
4.3.2 Déclarer la bibliographie dans index.Rmd
Dans le bloc YAML en tête de index.Rmd
, indique le nom du fichier .bib
et le style bibliographique :
biblio-style: apalike
: style auteur-année classique- Tu peux aussi utiliser d’autres styles (
chicago
,ieee
, etc.) ou un fichier.csl
(Citation Style Language) link-citations: true
ajoute un lien hypertexte entre la citation dans le texte et la référence complète
4.3.3 Citer une source dans le texte
Dans ton texte .Rmd
, tu peux :
- Citer entre parenthèses :
[@xie2016bookdown]
→ (Xie 2016) - Intégrer la citation dans la phrase :
@xie2016bookdown
→ Xie (2016)
Exemples :
4.3.4 Génération automatique de la bibliographie
Lors de la compilation :
- Bookdown recherche toutes les citations dans les fichiers
.Rmd
- Il génère automatiquement la section “Références” à la fin du livre (ou à l’endroit où tu places un fichier
.Rmd
avec un titre# Références
)
Tu n’as pas besoin d’écrire la bibliographie à la main : elle sera construite dynamiquement à partir du fichier .bib
.
- Donne à chaque référence une clé unique et explicite (
@xie2016bookdown
plutôt que@ref1
) - Place le fichier
.bib
à la racine de ton projet - Utilise des groupes de références avec
[@ref1; @ref2]
si nécessaire - Teste la compilation en HTML et en PDF pour vérifier que les styles s’affichent bien