8 votes

Rapport à 2 colonnes dans R Markdown - Générer un fichier HTML à côté du tableau de données

Je cherche à afficher un rapport à 2 colonnes en tant que fichier HTML autonome en utilisant uniquement R et Markdown. Je suis très novice en markdown dans R, donc j'ai besoin d'aide avec la mise en page.

L'image ci-dessous affiche la mise en page de ce que je voudrais afficher en utilisant RMarkdown.

entrez la description de l'image ici

L'HTML est du côté gauche et quelques données du côté droit.

Le HTML brut et le dataframe d'exemple peuvent être trouvés ici:

Note: J'ai utilisé le package pander pour créer le tableau en utilisant la commande suivante:

pandoc.table(df, style="rmarkdown")

15voto

Kevin Ushey Points 3764

Bien que ce ne soit pas une solution parfaite, c'est un bon point de départ : Yihui a récemment ajouté des modèles HTML à knitr, et docco est un exemple de page à deux colonnes : http://cran.r-project.org/web/packages/knitr/vignettes/docco-classic.html.

Vous pouvez voir le fichier de modèle utilisé pour cette sortie ici : https://github.com/yihui/knitr/blob/master/inst/misc/docco-template.html.

Alternativement, vous pouvez essayer d'insérer du HTML en ligne directement dans vos morceaux de R Markdown, mais c'est très bricolé et vous pourriez vous sentir mal à l'aise de le faire. Nous utilisons results='asis' pour que le HTML caté soit rendu correctement, et out.extra='' pour garantir que le HTML utilisé pour générer les figures soit généré immédiatement, plutôt que le langage Markdown pour l'inclusion des images.

```{r two-column, results='asis', echo=FALSE, out.extra=''}
library(knitr)
cat("")
cat("")
cat("")
cat("")
plot( rnorm(10) )
cat("")
kable( rnorm(10), format="html" )
cat("")
```

Appeler knit sur cela devrait produire une mise en page à 2 colonnes pour ce fragment particulier (bien que sans aucun style agréable pour le tableau ; vous pourriez ajouter cela vous-même avec un peu de CSS)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X