Ocultar el código R en Rmarkdown / knit y solo mostrar los resultados
En mis documentos R Markdown, a veces solo quiero generar un informe sin mostrar el código real (especialmente cuando se lo envío a mi jefe). ¿Cómo puedo ocultar el código R y simplemente mostrar el gráfico y los resultados?
Por ejemplo:
---
output: html_document
---
```{r fig.width=16, fig.height=6}
plot(cars)
```
Esto muestra tanto los comandos como el gráfico. ¿Cómo puedo eliminar los comandos de mi informe HTML?
4 answers
Claro, solo hazlo
```{r someVar, echo=FALSE}
someVariable
```
Para mostrar alguna variable (previamente calculada) someVariable
. O ejecutar código que imprime etc pp.
Así que para trazar, tengo eg
### Impact of choice of ....
```{r somePlot, echo=FALSE}
plotResults(Res, Grid, "some text", "some more text")
```
Donde la función de trazado plotResults
es de un paquete local.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-10-26 16:54:05
También puede ser interesante para que sepas que puedes usar:
{r echo=FALSE, results='hide',message=FALSE}
a<-as.numeric(rnorm(100))
hist(a, breaks=24)
Para excluir todos los comandos que das, todos los resultados que escupe y toda la información del mensaje que se escupió por R (eg. después de la biblioteca (ggplot) o algo así)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-07-27 19:33:12
Alternativamente, también puede analizar un documento de markdown estándar (sin bloques de código per se ) sobre la marcha por el paquete de markdownreports.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-09-14 12:42:32
Simplemente agregando las respuestas y expandiendo lo básico. Aquí hay tres opciones:
1) Ocultar código (fragmento individual)
Podemos incluir echo=FALSE
en el encabezado chunk:
```{r echo=FALSE}
plot(cars)
```
2) Ocultar trozos (globalmente).
Podemos cambiar el comportamiento predeterminado de knitr usando la función knitr::opts_chunk$set
. Llamamos a esto al inicio del documento e incluimos include=FALSE
en el encabezado del fragmento para suprimir cualquier salida:
---
output: html_document
---
```{r include = FALSE}
knitr::opts_chunk$set(echo=FALSE)
```
```{r}
plot(cars)
```
3) Fragmentos de código colapsados
Para HTML salidas, podemos usar plegado de código para ocultar el código en el archivo de salida. Todavía incluirá el código, pero solo se puede ver una vez que un usuario haga clic en esto. Puedes leer más sobre esto aquí.
---
output:
html_document:
code_folding: "hide"
---
```{r}
plot(cars)
```
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-10-01 10:25:43