Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

suppress console output in r markdown, but keep plot

Hi I have the following markdown chunk:

```{r, echo=FALSE,warning=FALSE,message=FALSE,error=FALSE} lapply(obj,function(x) plot(x,main="some plot") box() axis(1,at=seq(0,25,by=1)) ``` 

The output is multiple plots. However I also get the console message in the pdf document underneath the plots.

<Plot 1> nice plot 1! <Plot 2> nice plot 2!  -- nasty horrible console output ## [[1]]  01.2882829   ## [[2]] 120.29393933 

I have tried echo/warning/error/message = FALSE, but neither of these suppress the console output

please help!

like image 812
brucezepplin Avatar asked Jun 12 '15 19:06

brucezepplin


People also ask

How do I hide the output in R markdown?

You use results="hide" to hide the results/output (but here the code would still be displayed). You use include=FALSE to have the chunk evaluated, but neither the code nor its output displayed.

How do I display code but not result in R markdown?

R Markdown still runs the code in the chunk, and the results can be used by other chunks. echo = FALSE prevents code, but not the results from appearing in the finished file. This is a useful way to embed figures. message = FALSE prevents messages that are generated by code from appearing in the finished file.


2 Answers

try this:

{r, echo=FALSE,results='hide',fig.keep='all'} lapply(obj,function(x) plot(x,main="some plot") box() axis(1,at=seq(0,25,by=1)) 
like image 86
Pablo Figueroa Avatar answered Sep 27 '22 23:09

Pablo Figueroa


Wrapping any object in invisible will prevent automatically printing it.

You should be able to use

invisible(lapply(obj,function(x) plot(x,main="some plot"))) 

However the fact that echo=FALSE doesn't work suggests that there might be something else going on.

like image 21
shadowtalker Avatar answered Sep 28 '22 00:09

shadowtalker