Error in .External2(C_X11, paste0(“png::”, filename), g w i d t h , g width, g width,gheight, : unable to start device PNG In addition: Warning message: In png() : unable to open connection to X11 display ‘’。
进入R 首先在R中输入 capabilities(): 查看图片是否可用 对应的包是否为TRUE png jpeg tiff pdf svg ps x11 win raster TRUE TRUE FALSE TRUE TRUE TRUE TRUE FALSE TRUE
不为TRUE则需要重新安装。
不使用X11生成,使用 图形渲染库Cairo。
【步骤1】:安装Cairo包 install.packages(“Cairo”)
【步骤2】:加载Cairo后,查看支持
library(Cairo) Cairo.capabilities() png jpeg tiff pdf svg ps x11 win raster TRUE FALSE FALSE TRUE TRUE TRUE TRUE FALSE TRUE 说明已经支持用cairo生成图片了
Cairo使用起来非常简单,和基础包grDevices中的函数对应。 CairoPNG: 对应grDevices:png() CairoJPEG: 对应grDevices:jpeg() CairoTIFF: 对应grDevices:tiff() CairoSVG: 对应grDevices:svg() CairoPDF: 对应grDevices:pdf()
【步骤3】:生成图片
CairoPNG(file=“out.png”,width=800,height=480) hist(clf2$school) getwd() [1] “/home/enn_james” 在当前目录下可以看到生成了图片。
因为有些函数是只能用png包的 所以第二种直接安装png包
1.首先,退出R,然后安装一堆相关的包 $ sudo yum install libpng libpng-devel libtiff libtiff-devel libjpeg-turbo libjpeg-turbo-devel
2.安装png的包 install.packages(“png”)
./configure --prefix=$prefix --enable-R-shlib --with-x --with-libpng --with-jpeglib && make && make install
查看: 在R中输入 capabilities()
测试:
x<-rnorm(100) # 随机取100个点坐标 y<-rnorm(100) png(file=“pic_plot.png”, width=640, height=480) # png函数 plot(x, y, col="#ff0000", pch=19, cex=2, main=“plot”) dev.off()