使用ReporteRs包(。:18048)在远程R服务器上使用ggplots生成html文档时出错:Gtk-WARNING **:无法打开显示:

时间:2015-07-03 12:37:31

标签: linux r ggplot2 reporters

我在远程linux服务器上安装了ReporteRs包,并尝试使用它生成HTML页面。它运行正常,但是当尝试将ggplot添加到文档时,它会出现此错误:

(.:18048): Gtk-WARNING **: cannot open display:

我使用解决方案解决了here提到的这类问题,(在运行R之前运行"导出DISPLAY =:0.0"),但仍然存在错误。现在它说:

(.:19674): Gtk-WARNING **: cannot open display: :0.0

现在我想知道是否有办法改变addPlot()函数,使其不想显示任何内容,只是想将它放在文档中?

我使用addplot()函数,如下所示:

data <- structure(list(x = c("1", "2", "3", "4", "5", "6", "7", "8", 
"9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", 
"20"), y = c(142, 316, 223, 319, 61, 155, 400, 384, 183, 342, 
308, 167, 20, 506, 310, 164, 66, 221, 368, 345)), .Names = c("x", 
"y"), row.names = c(NA, 20L), class = "data.frame")
library(ReporteRs)
library(ggplot2)

mydoc = bsdoc( title = 'My page' )
graph <-  qplot(data$x,data$y, data)
mydoc = addPlot( mydoc, fun = print, x =graph,vector.graphic = TRUE, width = 12,par.properties = parLeft(padding = 5)) 
writeDoc( mydoc, file = "/mypage.html" )

是否有解决方案或解决此问题?非常感谢提前!

编辑有一个解决方法。首先,我将绘图保存为带有ggsave()的图像。其次,我使用ReporteRs包的addImage()将此图像添加到文档中。这是相当丑陋的,因为它需要更多的时间来处理。

EDIT2 我做了一些调查。它与X11设备有关。现在我想知道如何在不需要显示的情况下使用X11。用R代码可以做到这一点吗?

0 个答案:

没有答案