R标记和半透明度

R标记和半透明度,r,latex,r-markdown,sweave,R,Latex,R Markdown,Sweave,我过去遇到过一些半透明度问题,我通过在.Rprofile中添加以下行来解决这些问题: setHook(packageEvent("grDevices", "onLoad"), function(...) grDevices::X11.options(type='cairo')) options(device='x11') 所以现在RStudio的一切都很好。但是,当我使用Rmarkdown中的render函数生成.html文件时,我再次遇到以下错误: 在grid

我过去遇到过一些半透明度问题,我通过在.Rprofile中添加以下行来解决这些问题:

setHook(packageEvent("grDevices", "onLoad"),
                function(...) grDevices::X11.options(type='cairo'))
options(device='x11')
所以现在RStudio的一切都很好。但是,当我使用Rmarkdown中的render函数生成.html文件时,我再次遇到以下错误:

在grid.Call.graphics中(L_多边形,x$x,x$y,索引):
此设备不支持半透明:仅报告一次 每页

我试图直接在RStudio中绘制png()设备,但得到了相同的错误

所以我尝试了这个:

ggsave("image.png", device = Cairo_png)
使用cairoDevice库:它可以工作

我试图强迫knitr使用Cairo_png作为设备。因为我遵循了文档,所以它应该是正确的方法。在我的Makefile中:

$(MAINDIR)/%.html:%.Rmd
        Rscript \
                -e "require(rmarkdown); require(knitr); require(cairoDevice)" \
                -e "knitr::opts_chunk[['set']](dev = Cairo_png)" \
                -e "knitr::opts_chunk[['set']](fig.width = 12)" \
                -e "knitr::opts_chunk[['set']](warning = FALSE, message = FALSE, cache = 2)" \
                -e "rmarkdown::render('$<', html_document(), output_dir = '$(MAINDIR)', intermediates_dir = '$(MAINDIR)')"
$(MAINDIR)/%.html:%.Rmd
Rscript\
-e“require(r标记);require(knitr);require(cairoDevice)”\
-e“knitr::opts_chunk['set']](dev=Cairo\u png)\
-e“knitr::opts_chunk['set']](图宽度=12)\
-e“knitr::opts_chunk['set']](警告=FALSE,消息=FALSE,缓存=2)\

-e“rmarkdown::render('$您尝试过吗?如果是,配置脚本输出是什么?从源代码编译后…它正在工作。谢谢!