X11通过ssh为R转发:为什么会出现此警告?
我需要通过ssh连接在远程服务器(NetBSD)上使用R(来自pkgsrc的3.0.2),并使用X11转发<代码>绘图(1)正在我的本地计算机上生成预期的图形,但是R也在我的终端会话中返回警告,如下所示X11通过ssh为R转发:为什么会出现此警告?,r,ssh,x11,netbsd,R,Ssh,X11,Netbsd,我需要通过ssh连接在远程服务器(NetBSD)上使用R(来自pkgsrc的3.0.2),并使用X11转发绘图(1)正在我的本地计算机上生成预期的图形,但是R也在我的终端会话中返回警告,如下所示 > plot(1) Warning messages: 1: In (function (display = "", width, height, pointsize, gamma, bg, : locale not supported by Xlib: some X ops will op
> 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"
错误表明X11图形驱动程序不知道使用什么字体(请参阅)。默认情况下,R安装时使用C语言环境集。对于linux,您需要设置一个以语言为前缀的UTF-8语言环境 例如,对于美国的英语,您可以将其设置为“en_US.UTF-8” 尝试使用如下命令设置系统区域设置:
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
()这是字体或编码问题。在netBSD计算机上,通过
sessionInfo()
和names(X11Fonts())
,您会得到什么?按照您的建议设置系统区域设置后,我仍然会收到相同的错误,但这显然是对的。请尝试“LC_ALL”而不是“LC_TIME”(在不读取的情况下复制和粘贴)。使用您指示的Sys.setlocale命令后,R找不到任何X11字体,因此打印渲染时没有文本(例如比例尺)。我正在检查这是否是我需要在R之外的NetBSD/pkgsrc中解决的问题。不走运。还是卡住了。