在 R 图中结合 Unicode 进行排版

Typesetting combining Unicode in R plots

Unicode 组合上划线字符,U+0305 可用于指示数学术语,例如 表示随机变量 X 的平均值。(有些人更喜欢长音符的外观,U+0304 (X̄ ), 但快速维基百科表明这是不精确的。)

我明白了如何在R中输入这样的字符,并且

cat("X\u0305")

正确生成 。但是,当我尝试将此字符放在 plot(1:10,10:1,main="X\u0305")

中时

上划线明显偏移,如图 here 所示。同样的问题存在于 ggplot 中,因为 ggplot(data.frame(x=1:10,y=10:1)) + geom_point(aes(x=x,y=y,color="X\u0305"))

产生 similar 输出。

我是运行 Mac OS X El Capitan,我在终端和RStudio中都遇到了这个问题。类似标记的问题“Unicode characters in ggplot legend”没有解决我的问题。

另一种选择是使用 expression(bar(X)):

ggplot(data.frame(x=1:10,y=10:1)) + 
   geom_point(aes(x=x,y=y,color="Xbar")) +   
   scale_colour_discrete(labels=expression(bar(X)))

plot(1:10,10:1,main=expression(bar(X)))

?plotmath 有更多关于在 R 中使用表达式的数学文本的各种选项的信息。