Tutoriel : personnalisez les rendus Word de R markdown

J’utilise quotidiennement le format R markdown, notamment pour réaliser des comptes rendus d’analyses statistiques.

J’utilise le rendu html pour construire le document – je le knit régulièrement pour vérifier que la sortie est bien conforme à mes attentes, c’est-à-dire que ce qui est affiché correspond bien à ce que je souhaite faire apparaître.

J’utilise ensuite un rendu Word, pour transmettre à mes clients, mes étudiants ou mes collaborateurs, une première version de mon travail.

J’aime bien ce format parce qu’il est facile à commenter et que de nouveaux éléments (images, paragraphe, etc…) peuvent facilement être ajoutés par tout le monde (il suffit simplement de savoir utiliser Word).

Enfin, j’utilise le rendu pdf comme version finale de mon travail.

C’est déjà génial de pouvoir générer un document Word à partir d’un document R markdown ! Mais au fil du temps, j’ai eu envie de l’améliorer pour obtenir un rendu plus personnel.

J’ai alors écrit un court tutoriel pour vous montrer comment le faire, en pas à pas.

Prérequis

Pour bien comprendre cet article, dédié à la personnalisation de documents Word générés à partir de R markdown,  il est nécessaire de savoir :

Tutoriel : personnalisez vos rendus Word

Le principe de cette amélioration des rendus Word, consiste à :

  1. Créer un document Word avec les styles que vous souhaitez appliquer à vos rendus Word,
  2. Inclure ce document Word dans l’entête du fichier Rmd, dans la partie consacrée au rendu Word

Ouvrir un nouveau document.Rmd

Dans votre projet R : File –> New File –> Rmarkdown

Enregistrez le dans le projet R

File –> Save as.

Donnez lui n’importe quel nom, “test_word” par exemple.

Knitez "test_word.rmd" en word

knit word

Voici le rendu  :

Renommez ce document

Enregistrez le document, dans le même répertoire que votre document .Rmd dont vous voulez améliorer le rendu Word, en le nommant “word_styles_references.docx”, par exemple.

Modifiez les éléments de style de ce document "word_styles_references.docx"

Par exemple :

  • Sélectionnez le titre
  • Passez le en taille 36, en majuscule, en couleur rouge, et en police Trebuchet MS
  • Ouvrez le menu des Styles
  • Repérez le style de l’élément modifié dans la liste (il suffit de faire dérouler).
  • Choisissez Mettre à jour pour correspondre à la sélection
  • Recommencez avec un autre élément

Au final vous pourriez obtenir ceci par exemple :

  • Enregistrez le document (sans modifier le nom)

Ajouter ce document Word dans votre Rmd

Il s’agit d’ajouter l’option `reference_docx: word_styles_references.docx` dans l’en-tête du document rmd que vous souhaitez kniter en Word :

en-tête rmarkdown

Knitez en Word votre document rmd

Les styles du document que vous avez créé seront automatiquement appliqués au rendu word. Voici un exemple :

Conclusion

J’espère que ce court tutoriel vous permettra d’améliorer facilement vos rendus Word afin qu’ils correspondent davantage à vos besoins.

Si nécessaire, vous trouverez des informations complémentaires ici, et là.

Si cet article vous a plu, ou vous a été utile, et si vous le souhaitez, vous pouvez soutenir ce blog en faisant un don sur sa page Tipeee 🙏

Crédits photos : Image par SnapwireSnaps de Pixabay

10 réponses

  1. Merci du tutoriel.
    Mais je n’arrive pas à obtenir le fichier word avec les rendus que je souhaite, j’ai pourtant scrupuleusement suivis les étapes. Voici le message sur la console (plus bas)

    |……… | 14%
    ordinary text without R code

    |………………. | 29%
    label: setup (with options)
    List of 1
    $ include:

    processing file: test_word.Rmd
    logi FALSE

    |………………………. | 43%
    ordinary text without R code

    |………………………………. | 57%
    label: cars
    |………………………………………. | 71%
    ordinary text without R code

    |……………………………………………….. | 86%
    label: pressure (with options)
    List of 1
    $ echo: logi FALSE

    |………………………………………………………..| 100%
    ordinary text without R code

    “C:/Program Files/RStudio/bin/pandoc/pandoc” RTS -K512m -RTS test_word.utf8.md –to docx –from markdown autolink_bare_uris tex_math_single_backslash smart –output test_word.docx –highlight-style tango –lua-filter “C:/Users/HP/Documents/R/win-library/3.6/rmarkdown/rmd/lua/pagebreak.lua”
    output file: test_word.knit.md

    Output created: test_word.docx

  2. Bonjour Claire,
    merci beaucoup pour ce tutoriel de qualité qui m’a motivé à passer à Rmarkdown !
    Une question comment éviter que des signes ne s’affichent à la place des accents français comme “é” à la place du “é” ?
    Merci d’avance

    1. Bonjour Benjamin,
      lorsque je travaille en projet R et que j’ouvre R Studio, puis le rmd, je n’ai pas de problème d’accent. Les problèmes d’accent surviennent quand j’ouvre R studio en cliquant sur le rmd.
      Bonne continuation

  3. Bonjour Claire,
    Merci pour vos tutos c’est clair et simple à comprendre même pour des débutants.
    J’aurai une question: je crée mon premier .rmd en sortie : un document word. j’ai crée comme vous avez indiqué un doc de ref pour la mise ne page en faisant:
    output: word_document
    reference_docx: maquette.docx
    mon souci est qu’il ne prend pas en compte la mise en page du doc “maquette.docx”. Petite précision supplémentaire, je n’ai pas word sur mon ordi donc la mise ne page je l’ai faite sur writer libreoffice. Avez-vous une idée du pourquoi lorsque je lance le knit il ne prend pas en compte le doc de reférence “maquette.docx”?

    1. Bonjour,

      je vous conseille de reprendre les étapes décrites dans l’article. Il faut générer le .docx qui servira de maquette, avec Rmarkdown. Le sauver en docx. Le réouvrir, faire les changements souhaités, et l’enregistrer dans le même dossier que votre script.Rmd pour lequel vous voulez un rendu avec la maquette.
      Je ne sais pas comment cela se passe avec libre office.
      Bonne continuation

  4. Bonjour,

    Je débute avec R Markdown, je ne trouve pas comment ajouter un pied de page pour par exemple insérer un numéro de page?

    Es-ce possible pour un doc word

    D’avance merci

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Bonjour !

vous venez souvent ?

Identifiez-vous pour avoir accès à toutes les fontionnalités !

Aide mémoire off'R ;)

Enregistrez vous pour recevoir gratuitement mes fiches “aide mémoire” (ou cheat sheets) qui vous permettront de réaliser facilement les principales analyses biostatistiques avec le logiciel R et pour être informés des mises à jour du site.