我正在编织pdf,但是在输出图形时,它也会输出以下内容。如何阻止R输出此内容?
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
## Registering fonts with R
Importing fonts may take a few minutes, depending on the number of fonts and the speed of the system.
Continue? [y/n]
## Exiting.
## Arial Black already registered with windowsFonts().
## Arial already registered with windowsFonts().
## Arial Narrow already registered with windowsFonts().
代码:
```{r, echo=FALSE}
library(dplyr)
library(kableExtra)
library(knitr)
library(extrafont)
font_import()
loadfonts(device = 'win')
x <- seq(1,9,by = 1)
kable(x,format = 'latex', booktabs = T, caption = "A KnitR Kable")
```
答案 0 :(得分:3)
通常有一个单独的区域,您可以在其中加载所有软件包并包含message = FALSE, warning = FALSE
选项。这样会使输出静音,并使文件不会被有时很多警告加载程序包所填充:
```{r, message = FALSE, warning = FALSE}
library(dplyr)
library(kableExtra)
library(knitr)
library(extrafont)
```
```{r, echo=FALSE}
font_import()
loadfonts(device = 'win')
x <- seq(1,9,by = 1)
kable(x,format = 'latex', booktabs = T, caption = "A KnitR Kable")
```
确保没有任何与用户相关的警告或消息被静默。
答案 1 :(得分:1)
这是您需要做的:
确保所有代码至少提前运行一次以下载所有内容(我确定已完成)
font_import(prompt=F)
禁用提示。如果需要,也可以将其包装在suppressMessages()
中。
您还应该在其他可能需要的地方随意使用suppressMessages()
,但是在抑制它们之前,请确保您知道这些消息是什么。
此外,即使在架构的更高层次上,我也不确定您是否真的需要在代码块中使用所有这些功能。为什么不先运行它们呢?好吧,如果有充分的理由,请参考上面的建议。否则,很容易将嘈杂的代码放在一个块中而不显示其输出,然后将kable
行和其他相当的代码放在将要显示其输出的块中。