Skip to content

Collection non officielle de templates (Rmarkdown) et de thèmes (ggplot) qui respectent la charte graphique INRAE.

License

Notifications You must be signed in to change notification settings

mlaparie/InraeThemes

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

InraeThemes

Lifecycle: experimental

InraeThemes est un package proposant une variété de templates (Rmarkdown/LaTeX), de thèmes (ggplot) et de fonctions utilitaires qui respectent la charte graphique INRAE.

Attention : Ces modèles nécessitent l’installation de 2 polices adoptées dans la charte graphique INRAE : Raleway et Avenir Next Pro.

Installation

Le package peut-être installé via :

# install.packages("remotes")
remotes::install_github("davidcarayon/InraeThemes")

Si vous ne possédez aucune installation de LaTeX sur votre machine, vous devrez également en installer une version minimale pour utiliser les modèles mobilisant LaTeX :

install.packages("tinytex")
tinytex::install_tinytex()

Thème ggplot2

Ce package propose différentes fonctions permettant de personnaliser les graphiques produits avec {ggplot2} pour qu’ils correspondent à la charte graphique INRAE.

Palette de couleurs

La palette de couleurs construite à partir de la charte graphique V3 est la suivante :

Utilisation du thème et des échelles de couleur

Ce package propose les 3 fonctions suivantes :

theme_inrae()
scale_color_inrae()
scale_fill_inrae()

Voici différents exemples d’utilisation de ces fonctions :

library(InraeThemes)
library(ggplot2)

## On charge les données d'exemple du package
data("example_datasets")

## On construit 4 graphiques d'exemple, stockés dans une même liste
display <- list(
  ggplot(example_datasets$www, aes_string(x = 'Minute', y = 'Users',
                                          color = 'Measure',
                                          shape = 'Measure')) + 
    geom_line() + 
    geom_point(size = 3) + 
    facet_wrap(~Measure) +
    geom_point(size = 1.8) +
    scale_color_inrae() +
    scale_shape_manual(values = c(15, 16)) +
    labs(title = "Titre", subtitle = "Sous-titre") +
    theme_inrae(),
  
  ggplot(example_datasets$cars, aes_string(x = 'mpg', fill = 'cyl',
                                           colour = 'cyl')) + 
    geom_density(alpha = 0.75) + 
    scale_fill_inrae() +
    scale_color_inrae() +
    labs(fill = 'Cylinders', colour = 'Cylinders', x = 'MPG', y = 'Density') +
    theme_inrae(),
  
  ggplot(example_datasets$dia, aes_string(x = 'price', fill = 'cut')) + 
    geom_histogram(binwidth = 850) + 
    xlab('Price (USD)') + 
    ylab('Count') + 
    scale_fill_inrae() +
    scale_x_continuous(label = function(x) paste0(x / 1000, 'k'))+
    theme_inrae(),
  
  ggplot(example_datasets$drivers, aes_string(x = 'Year', y = 'Deaths',
                                              fill = "Year")) + 
    geom_boxplot(size = 0.25) + 
    ylab('Monthly Deaths') +
    theme_inrae() +
    scale_fill_inrae() +
    coord_flip() +
    labs(caption = "Caption") 
)

# On assemble
do.call(gridExtra::grid.arrange,  display)

Templates de documents/présentations

Ce package permet aussi de rédiger des rapports et/ou présentations pré-formatés selon la charte graphique INRAE.

Attention, ces fonctions ne visent qu’à fournir des templates (css, LaTeX, docx, logos) correspondants à la charte INRAE, associés à des fichiers Rmarkdown avec un YAML correctement configuré. Nous invitons les utilisateurs à se renseigner par la suite sur chacune des technologies utilisées (rmarkdown, LaTeX, pagedown, officedown, revaljs, remarkjs, etc.) pour aller plus loin dans la personnalisation des documents.

Rapports

Différents templates sont proposés en fonction de la longueur du rapport et du format de sortie désiré (pdf, docx, html).

Rapport paginé (Pagedown)

Ce premier template permet de produire un rapport HTML et/ou PDF (au choix) en utilisant le package {pagedreport}, lui-même basé sur {pagedown}. Ce format est dédié à la rédaction de rapports relativement courts car la rédaction se concentre dans un seul fichier .Rmd. Lorsque la rédaction devient plus lourde avec séparation des chapitres et une bibliographie par chapitre par exemple, il convient de passer au modèle suivant (i.e. {bookdown}).

Ce template est accessible via File > New File > Rmarkdown > From Template.

Pour son exécution, il faudra installer le package {pagedreports} uniquement disponible sur github à l’heure actuelle :

# install.packages("remotes")
remotes::install_github("rfortherestofus/pagedreport", ref = "main")

Le template .Rmd est livré avec un YAML préformaté selon le template fourni par le package {pagedreport} avec un logo et des couleurs INRAE. L’utilisateur pourra choisir parmis trois mises en formes proposées (hazelnuts, grid ou windmill).

L’utilisateur pourra aussi choisir d’utiliser chrome_print dans le YAML au moment de la compilation pour obtenir un fichier PDF en plus de la sortie HTML.

Voici un exemple de rapport :

Rapport fragmenté (Gitbook / Bookdown)

Ce second template permet de produire un rapport HTML et/ou PDF (au choix) en utilisant le package {bookdown}. Ce format est dédié à la rédaction document longs et complexes (i.e livres, thèses, etc.) car il permet une gestion modulaire des chapitres en fragmentant le rapport en plusieurs sous-documents.

{bookdown} est un package principalement dédié, tel que son nom l’indique, à la rédaction de livres. Contrairement au format {pagedown}, la version PDF nécessitera ici une installation LaTeX. Pour plus d’informations : Visitez le site de {bookdown}.

Comme il s’agit d’un format particulier, constitué d’un grand nombre de fichiers, celui-ci ne peut être proposé via un template de document, mais plutôt via un template de projet Rstudio via Projects > New Project > New Directory > Gitbook INRAE. L’utilisateur peut ici définir la localisation de son projet de rapport et choisir d’initialiser ou non un dépôt git.

Pour la compilation globale du document, nous vous suggérons le widget rstudio Build > Build book dans le panneau contenant notamment les objets R.

Voici un exemple de rapport :

Rapport éditable (Word)

Ce troisième template permet de produire un rapport au format Microsoft Word (.docx). Il fait appel aux packages {officer} et {officedown}.

Ce template est accessible via File > New File > Rmarkdown > From Template.

Le template Rmd est livré avec un template au format .docx, à modifier selon les préférences de l’utilisateur, et un logo bloc-état.

Voici un exemple de rapport :

Rapport statique (LaTeX)

Ce quatrième template est une exception puisqu’il s’agit d’un template LaTeX (et non Rmarkdown). Une maîtrise de LaTeX est donc requise pour l’utilisation de ce modèle.

Note : Ce modèle a été développé par E. Quinton (INRAE/EABX).

Puisque ce template nécessite un grand nombre de fichiers pour fonctionner (images, page de garde, etc.) et n’est pas un template Rmarkdown, celui-ci ne peut être proposé via un addin Rstudio. Mais son utilisation reste simple, puisqu’il suffit juste de lancer la commande :

latex_report("Mon_Rapport")

Pour créer un répertoire contenant le template prêt à l’emploi. Le fichier principal du template (document_inrae.tex) sera automatiquement ouvert sur Rstudio.

Voici un exemple de rapport :

Présentations

Présentation dynamique 2D (RevealJS)

Ce cinquième template permet de produire une présentation HTML utilisant la technologie RevealJS. La présentation est construites en 2 niveaux : les titres de premiers niveau définissent la dimension horizontale tandis que les titres de second niveau (et plus) définissent la dimension verticale. Chaque titre correspond à une diapositive.

Ce template est accessible via File > New File > Rmarkdown > From Template.

Le template Rmd est livré avec une feuille de style CSS correspondant aux couleurs INRAE et un logo bloc-etat.

L’utilisateur pourra choisir d’utiliser chrome_print au moment de la compilation pour obtenir un fichier PDF en plus de la sortie HTML (Mais déconseillé, privilégier RemarkJS pour la sortie PDF).

Voici un exemple de présentation :

Présentation statique (RemarkJS)

Ce sixième template permet de produire une présentation HTML/PDF utilisant la technologie RemarkJS du package {xaringan}.

Ce template est accessible via File > New File > Rmarkdown > From Template.

Le template Rmd est livré avec une feuille de style CSS correspondant aux couleurs INRAE, un fichier HTML permettant d’insérer le logo bloc-état sur chaque slide via du JavaScript et un logo INRAE blanc (issu de la charte graphique INRAE).

Note : le style CSS est très largement inspiré du thème développé par A. Bichat pour sa soutenance de thèse.

L’utilisateur pourra choisir d’utiliser chrome_print au moment de la compilation pour obtenir un fichier PDF en plus de la sortie HTML.

Voici un exemple de présentation :

Présentation éditable (Powerpoint)

Ce septième template permet de produire un une présentation au format PowerPoint

Ce template est accessible via File > New File > Rmarkdown > From Template.

Le template Rmd est livré avec un template au format .pptx, à modifier selon les préférences de l’utilisateur.

Voici un exemple de présentation :

Présentation beamer (LaTeX)

Ce huitième template est une autre exception puisqu’il s’agit d’un template LaTeX (et non Rmarkdown). Une maîtrise de LaTeX est donc requise pour l’utilisation de ce modèle.

Note : Ce modèle a été développé par E. Quinton (INRAE/EABX).

Puisque ce template nécessite un grand nombre de fichiers pour fonctionner (images, page de garde, etc.) et n’est pas un template Rmarkdown, celui-ci ne peut être proposé via un addin Rstudio. Mais son utilisation reste simple, puisqu’il suffit juste de lancer la commande :

latex_presentation("Ma_Presentation")

Pour créer un répertoire contenant le template prêt à l’emploi. Le fichier principal du template (modele_beamer_inrae.tex) sera automatiquement ouvert sur Rstudio.

Voici un exemple de rapport :

Création d’un répertoire d’analyse

Nous proposons dans ce package un template de projet pour l’analyse de données, librement inspiré du package {ProjectTemplate} Ce template est directement accessible dans Rstudio via Projects > New Project > New Directory > New data analysis. L’utilisateur peut ici définir la localisation de son projet et choisir d’initialiser ou non un dépôt git.

Note : Cette architecture n’est qu’un exemple de bonne pratiques parmis bien d’autres. Libre à vous de modifier ce template selon vos habitudes. Vos suggestions d’améliorations sont évidemment les bienvenues ici.

About

Collection non officielle de templates (Rmarkdown) et de thèmes (ggplot) qui respectent la charte graphique INRAE.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TeX 47.3%
  • R 28.0%
  • CSS 24.7%