R Language
R en LaTeX avec tricot
Recherche…
Syntaxe
- << internal-code-chunk-name, options ... >> =
# R Code Ici
@ - \ Sexpr {#R Code Here}
- << read-external-R-file >> =
read_chunk ('r-file.R')
@
<< external-code-chunk-name, options ... >> =
@
Paramètres
Option | Détails |
---|---|
écho | (TRUE / FALSE) - Indique si le code source R doit être inclus dans le fichier de sortie |
message | (TRUE / FALSE) - Indique s'il faut inclure les messages de l'exécution de la source R dans le fichier de sortie |
Attention | (TRUE / FALSE) - Indique s'il faut inclure des avertissements de l'exécution de la source R dans le fichier de sortie |
Erreur | (TRUE / FALSE) - Indique s'il faut inclure des erreurs de l'exécution de la source R dans le fichier de sortie |
cache | (TRUE / FALSE) - S'il faut mettre en cache les résultats de l'exécution de la source R |
fig.width | (numeric) - la largeur du tracé généré par l'exécution de la source R |
fig.height | (numérique) - hauteur du tracé généré par l'exécution de la source R |
Remarques
Knitr est un outil qui permet d’entrelacer le langage naturel (sous la forme de LaTeX) et le code source (sous la forme de R). En général, le concept d'interpolation du langage naturel et du code source est appelé programmation alphabétisée . Comme les fichiers knitr contiennent un mélange de LaTeX (traditionnellement logé dans des fichiers .tex) et R (traditionnellement logé dans des fichiers .R), une nouvelle extension de fichier appelée R noweb (.Rnw) est requise. Les fichiers .Rnw contiennent un mélange de code LaTeX et R.
Knitr permet de générer des rapports statistiques au format PDF et constitue un outil essentiel pour réaliser des recherches reproductibles .
Compiler des fichiers .Rnw en PDF est un processus en deux étapes. Tout d'abord, nous devons savoir comment exécuter le code R et capturer la sortie dans un format compréhensible par le compilateur LaTeX (processus appelé «kniting»). Nous faisons cela en utilisant le paquet knitr. La commande pour cela est montrée ci-dessous, en supposant que vous avez installé le paquetage knitr :
Rscript -e "library(knitr); knit('r-noweb-file.Rnw')
Cela générera un fichier .tex normal (appelé r-noweb.tex dans cet exemple) qui pourra ensuite être transformé en fichier PDF en utilisant:
pdflatex r-noweb-file.tex
R en latex avec Knitr et Codage Externalisation
Knitr est un package R qui nous permet de mélanger le code R avec le code LaTeX. Une des manières d'y parvenir est d'utiliser des morceaux de code externes. Les blocs de code externes nous permettent de développer / tester des scripts R dans un environnement de développement R, puis d'inclure les résultats dans un rapport. C'est une technique d'organisation puissante. Cette approche est démontrée ci-dessous.
# r-noweb-file.Rnw
\documentclass{article}
<<echo=FALSE,cache=FALSE>>=
knitr::opts_chunk$set(echo=FALSE, cache=TRUE)
knitr::read_chunk('r-file.R')
@
\begin{document}
This is an Rnw file (R noweb). It contains a combination of LateX and R.
One we have called the read\_chunk command above we can reference sections of code in the r-file.R script.
<<Chunk1>>=
@
\end{document}
Lorsque vous utilisez cette approche, nous conservons notre code dans un fichier R distinct, comme indiqué ci-dessous.
## r-file.R
## note the specific comment style of a single pound sign followed by four dashes
# ---- Chunk1 ----
print("This is R Code in an external file")
x <- seq(1:10)
y <- rev(seq(1:10))
plot(x,y)
R en latex avec morceaux de code Knitr et Inline
Knitr est un package R qui nous permet de mélanger le code R avec le code LaTeX. Un moyen d'y parvenir est d'utiliser des morceaux de code en ligne. Cette approche est démontrée ci-dessous.
# r-noweb-file.Rnw
\documentclass{article}
\begin{document}
This is an Rnw file (R noweb). It contains a combination of LateX and R.
<<my-label>>=
print("This is an R Code Chunk")
x <- seq(1:10)
@
Above is an internal code chunk.
We can access data created in any code chunk inline with our LaTeX code like this.
The length of array x is \Sexpr{length(x)}.
\end{document}
R en LaTex avec morceaux de code Knitr et code interne
Knitr est un package R qui nous permet de mélanger le code R avec le code LaTeX. Un moyen d'y parvenir est d'utiliser des morceaux de code internes. Cette approche est démontrée ci-dessous.
# r-noweb-file.Rnw
\documentclass{article}
\begin{document}
This is an Rnw file (R noweb). It contains a combination of LateX and R.
<<code-chunk-label>>=
print("This is an R Code Chunk")
x <- seq(1:10)
y <- seq(1:10)
plot(x,y) # Brownian motion
@
\end{document}