X11通过ssh转发为R:为什么这个警告?

时间:2014-02-18 16:22:53

标签: r ssh x11 netbsd

我需要通过带有X11转发的ssh连接在远程服务器(NetBSD)上使用R(3.0k来自pkgsrc)。 plot(1)正在我的本地计算机上生成预期的图形,但是R也会在终端会话中返回警告,如下所示。

> plot(1)
Warning messages:
1: In (function (display = "", width, height, pointsize, gamma, bg,  :
  locale not supported by Xlib: some X ops will operate in C locale
2: In (function (display = "", width, height, pointsize, gamma, bg,  :
  X cannot set locale modifiers

我不知道这是否是我以后可能会遇到的问题,但我希望能够正确设置和配置所有内容。有人请澄清警告的含义并解释如何解决它们吗?

编辑以获取更多信息:

> sessionInfo()
R version 3.0.2 (2013-09-25)
Platform: x86_64--netbsd (64-bit)

locale:
[1] C

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     
> names(X11Fonts())
[1] "serif"        "sans"         "mono"         "Times"        "Helvetica"   
[6] "CyrTimes"     "CyrHelvetica" "Arial"        "Mincho"  

1 个答案:

答案 0 :(得分:0)

错误是说X11图形驱动程序不知道使用什么字体(参见this discussion)。默认情况下,R安装时使用C语言环境设置。对于linux,您需要设置一个以该语言为前缀的UTF-8语言环境。

例如,对于美国的英语,您可以将其设置为“en_US.UTF-8”。

尝试使用Sys.setlocale命令设置系统区域设置,如下所示:

Sys.setlocale("LC_CTYPE", "en_US.UTF-8")
Sys.setlocale("LC_ALL", "en_US.UTF-8")

这可以通过.bashrc配置文件完成,如下所示:

export LC_CTYPE=en_US.UTF-8
export LC_ALL=en_US.UTF-8

source