我们的系统管理员刚刚将我们的操作系统升级到SLES12SP1.我重新安装了Rv3.2.3并试图制作情节.我使用cairo_pdf并试图制作一个带有x标签的图,\u0298即太阳符号,但它不起作用:标签只是空白.例如:
cairo_pdf('Rplots.pdf')
plot(1, xlab='\u0298') # the x-label comes up blank
dev.off()
Run Code Online (Sandbox Code Playgroud)
这曾经起作用,但由于某种原因它不再存在.它适用于其他角色,例如
cairo_pdf('Rplots.pdf')
plot(1, xlab='\u2113') # the x-label comes up with the \ell symbol
dev.off()
Run Code Online (Sandbox Code Playgroud)
当我只是粘贴太阳能符号,即
plot(1, xlab='?')
Run Code Online (Sandbox Code Playgroud)
然后我收到了警告
Warning messages:
1: In title(...) :
conversion failure on '?' in 'mbcsToSbcs': dot substituted for <ca>
Run Code Online (Sandbox Code Playgroud)
该机器是德语,但我使用的是美国英语UTF-8语言环境:
> sessionInfo()
R version 3.2.3 (2015-12-10)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: SUSE Linux Enterprise Server 12 SP1
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
[3] LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8
[5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
[7] LC_PAPER=en_US.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
Run Code Online (Sandbox Code Playgroud)
关于如何让太阳能符号出现的任何提示?
也许您的文本编辑器正在使用 latin1,因此您会将 latin1 字符发送到控制台。
\n\n看一下编码
\n\nEncoding(\'\xca\x98\')\nRun Code Online (Sandbox Code Playgroud)\n\n和/或尝试
\n\nplot(1, xlab=iconv(\'\xca\x98\', from=\'latin1\', to="UTF-8"))\nRun Code Online (Sandbox Code Playgroud)\n\n但要小心,处理时编码可能会改变。\n如果您使用 Notepad++,您可以在文本编辑器中在不同编码之间进行转换。
\n