CentOS6.5下实现R绘图
2016-05-12 13:31 猎手家园 阅读(1958) 评论(0) 编辑 收藏 举报1、首先安装R的绘图包Cairo
下载地址:http://www.rforge.net/Cairo/files/
[root@Hadoop-NN-01 mysofts]# R CMD INSTALL Cairo_1.5-9.tar.gz
2、检查
> library(Cairo) # 加载Cairo包 > Cairo.capabilities() # 检查Cairo包支持的图片格式 png jpeg tiff pdf svg ps x11 win raster TRUE TRUE FALSE TRUE TRUE TRUE TRUE FALSE TRUE
兼容性的检查Cairo支持的图形输出格式:
支持:png、jpeg、pdf、svg、ps、x11(Linux桌面)、raster
不支持:tiff、win(windows桌面)
注:如果是Windows系统,则x11为FALSE, win为TRUE。
3、实例
> 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()
结果如下图:
4、可能遇到的错误:
1)no png support in this version of R
你R软件不支持png格式的图片,用capabilities()函数打印一下,你的环境支持的图片格式。
错误原因:不详,一般重装就能解决问题。
2)unable to open connection to X11 display
错误原因:未安装安装X11绘图设备。
如何安装?
在本地(我本地是XP)安装一个叫Xmanager的软件。它的主要功能就是接受从服务器上传回的绘图指令,然后再在本地安装这个指令画图。
它实际上监听了一个端口,这个端口(11号端口?)就是跟绘图相关的。所以现在本地运行Xmanager后,再在SSH上R中绘图,就可以了!命令capabilities(),我们也可以看到X11变成TRUE。
下载地址:http://www.xp510.com/xiazai/Networking/mstsc/14456.html
使用方法:
A、打开软件
报错:
错误原因:X11 forwarding依赖“xorg-x11-xauth”软件包,所以必须先安装“xorg-x11-xauth”软件包。
[root@Hadoop-NN-01 ~]# yum install xorg-x11-xauth
报错:“No such file or directory”的错误。
错误原因:你的linux主机没有安装xterm,请安装:
[root@Hadoop-NN-01 ~]# yum install –y xterm
B、连接成功
C、连接shell
特别注意:一定要勾选x11通道之类的选项。每个shell客户端都不一样,但是都有这样的选项。
进入shell界面检查:
[root@Hadoop-NN-01 ~]# echo $DISPLAY
如果什么都没有输出,请设置一下:
[root@Hadoop-NN-01 ~]# export DISPLAY=localhost:10.0 #10.0为localhost的端口。
D、然后进入R
>capabilities()
可以看到x11已经变成TRUE了
然后再执行一遍3实例。
3)semi-transparency is not supported on this device
记得加载Cairo包:
>library(Cairo) #加载图形渲染库
Ubuntu系统报错原因:是由于机器时缺少某些X11相关的库,请更新r-base-dev以前安装它所需的所有库。
[root@Hadoop-NN-01 ~]# sudo apt-get build-dep r-base-dev #在线安装,适用于ubuntu系统

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
· 提示词工程——AI应用必不可少的技术