2016-02-28 69 views
1

我们的系统管理员只是将我们的操作系统升级到SLES12SP1。我重新安装了Rv3.2.3并试图做出情节。我使用cairo_pdf并尝试绘制x标签为\u0298即太阳符号的情节,但不起作用:标签只是空白。例如:R绘制一些unicode字符,但不是其他字符

cairo_pdf('Rplots.pdf') 
plot(1, xlab='\u0298') # the x-label comes up blank 
dev.off() 

这用于工作,但由于某种原因它现在不再。它可与其他角色一起使用,例如

cairo_pdf('Rplots.pdf') 
plot(1, xlab='\u2113') # the x-label comes up with the \ell symbol 
dev.off() 

当我只是在太阳符号粘贴,即

plot(1, xlab='ʘ') 

然后我得到警告

Warning messages: 
1: In title(...) : 
    conversion failure on 'ʘ' in 'mbcsToSbcs': dot substituted for <ca> 

本机是德国人,但我使用的是美国英语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 

任何提示如何我可以让太阳能符号出现?

回答

0

也许您的文本编辑器正在使用latin1,因此您可以将latin1字符发送到您的控制台。

看编码

Encoding('ʘ') 

和/或尝试

plot(1, xlab=iconv('ʘ', from='latin1', to="UTF-8")) 

,但要小心应对的同时编码可能会改变。 如果您使用Notepad ++,则可以在文本编辑器中转换不同的编码。

+0

这给了我“E” – rhombidodecahedron

+0

此外,>编码(“ʘ”) [1]“UTF-8” – rhombidodecahedron

+0

那我不知道,但也许问题是,你不使用德语作为本地。 'Sys.setlocale(“LC_TIME”,“de_DE.UTF-8”)' 我使用R版本3.2.3(2015-12-10)并且具有区域设置 区域设置: [1] LC_CTYPE = de_AT.UTF -8 LC_NUMERIC = C [3] LC_TIME = de_AT.UTF-8 LC_COLLATE = de_AT.UTF-8 [5] LC_MONETARY = de_AT.UTF-8 LC_MESSAGES = de_AT.UTF-8 [7] LC_PAPER = de_AT.UTF -8 LC_NAME = C [9] LC_ADDRESS = C LC_TELEPHONE = C [11] LC_MEASUREMENT = de_AT.UTF-8 LC_IDENTIFICATION = C 它工作。但我不确定。 – Florian

相关问题