没有X11的Rmarkdown

问题描述 投票:2回答:1

我正在尝试在未启用Rmarkdown且崩溃的情况下在myRmdScript.Rmd机器上运行linux脚本(X11):

Quitting from lines 2-7 (myRmdScript.Rmd)
Error in .External2(C_X11, paste("png::", filename, sep = ""), g$width,  :
  unable to start device PNG
Calls: <Anonymous> ... block_exec -> chunk_device -> dev_new -> do.call -> <Anonymous>
In addition: Warning messages:
1: In grDevices::png(f) : unable to open connection to X11 display ''
2: In (function (filename = "Rplot%03d.png", width = 480, height = 480,  :
  unable to open connection to X11 display ''

Execution halted

这是我的第一个代码块:

```{r setup, include=FALSE}
library(Cairo)
knitr::opts_chunk$set(dev="CairoPNG")
knitr::opts_chunk$set(echo=TRUE,out.width='2000px',dpi=200)
```

除了在此计算机上启用X11之外,是否还有其他解决方法(这不利于RAM消耗问题)?

r linux unix r-markdown x11
1个回答
0
投票

最近我有同样的需求。 @hrbmstr在评论中建议的解决方案已接近,但无法使用。

缺少的部分是,您还应该将dev =“ CairoPNG”添加到安装程序块中,否则安装程序块将无法运行。

我的服务器功能,请注意jpeg,png,cairo,x11 tiff均为FALSE:

> capabilities()
       jpeg         png        tiff       tcltk         X11        aqua 
      FALSE       FALSE       FALSE       FALSE       FALSE       FALSE 
   http/ftp     sockets      libxml        fifo      cledit       iconv 
       TRUE        TRUE        TRUE        TRUE        TRUE        TRUE 
        NLS     profmem       cairo         ICU long.double     libcurl 
       TRUE        TRUE       FALSE        TRUE        TRUE        TRUE 

使用开罗软件包编译的完整Rmd。注意安装程序块中的dev参数。

---
title: "Untitled"
author: "TC"
date: "12/20/2019"
output: 
    html_document
---

```{r setup, include=FALSE, dev="CairoPNG"}
knitr::opts_chunk$set(echo = TRUE, dev="CairoPNG")
```

# test figure

```{r pressure, echo=FALSE}
plot(pressure)
```


Original discussion

© www.soinside.com 2019 - 2024. All rights reserved.