linux没有绘画界面,在linux环境下 无法画图

通常在win环境下,我们利用RStudio画图非常方便,直接plot就可以展现出图片,但是在linux环境下,我们通过shell则无法画图。

问题

例如我们在linux下的R中输入如下命令:

png('test.png')

则会出现如下错误信息:

Error in .External2(C_X11, paste("png::", filename, sep = ""), g$width,  :

unable to start device PNG

In addition: Warning message:

In png("test.png") : no png support in this version of R

此时提示png不被支持,我们输入如下命令:

capabilities()

屏幕出现如下提示:

jpeg      png     tiff    tcltk      X11     aqua http/ftp  sockets

FALSE    FALSE    FALSE    FALSE    FALSE    FALSE     TRUE     TRUE

libxml     fifo   cledit    iconv      NLS  profmem    cairo

TRUE     TRUE     TRUE     TRUE     TRUE    FALSE    FALSE

可以看到png确实是不被支持的。

解决办法:

使用图形渲染库Cairo。在R里面安装Cairo包,如果需要离线安装Cairo请参考链接:点击打开链接

在shell里执行命令:

R CMD INSTALL Cairo.tar.gz

但是在执行的过程中出现了如下错误:

configure: error: Cannot find cairo.h! Please install cairo (http://www.cairographics.org/) and/or set CAIRO_CFLAGS/LIBS correspondingly.

原因为linux系统没有安装Cairo库,解决办法为在shell中执行:

yum -y install cairo* libxt*

再次尝试执行:

R CMD INSTALL Cairo.tar.gz

又报了如下错误,崩溃:

fatal error: X11/Intrinsic.h: No such file or directory

原因应该是又没有安装Intrinsic这个东西,所以在shell中执行:

yum -y install */Intrinsic.h

安装完成后,再次尝试执行:

R CMD INSTALL Cairo.tar.gz

终于成功,自己都为自己感动了

131159827_1_20180425070146582.gif

使用方法:

以下为一个小例子:

library(Cairo)

CairoPNG('test.png') ## 打开画图

plot(graph)## 自定义画图

dev.off()## 关闭画图

执行完成之后,会发现相应的文件夹中出现了test.png这个图片。

同时我们也可以输入如下命令查看图片格式的支持情况:

Cairo.capabilities()

可以看到png已经为TRUE。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值