我的类别需要用希腊字母命名。我正在使用ggplot2
,它可以很好地处理数据。不幸的是,我无法弄清楚如何将这些希腊符号放在x轴(刻度线)上,并使它们出现在图例中。有没有办法做到这一点?
更新: 我看了link,然而,没有好的方法来描述我想要做的事情。
答案 0 :(得分:129)
这是一个优秀wiki的link,解释了如何在ggplot2中添加希腊符号。总之,以下是您获取希腊符号的方法
parse = T
或geom_text
内使用annotate
。expression(alpha)
获取希腊字母。labeller = label_parsed
内使用facet
。bquote(alpha == .(value))
。您可以在链接
中查看这些选项的详细用法EDIT。沿着刻度标记使用希腊符号的目的可以如下实现
require(ggplot2);
data(tips);
p0 = qplot(sex, data = tips, geom = 'bar');
p1 = p0 + scale_x_discrete(labels = c('Female' = expression(alpha),
'Male' = expression(beta)));
print(p1);
有关执行此操作时可用的各种符号以及如何使用它们的完整文档,请参阅?plotmath
。
答案 1 :(得分:29)
使用expression(delta)
其中'delta'代表小写δ
和'Delta'获取大写Δ
。
以下是希腊字符的完整列表:
Ααalpha
βββ
Γγ伽
Δδdela Εεepilon
Ζζzeta
Ηη他们 Θθtheta
Ιιiota
Κκkappa
Λλlambda
Μμ亩
Ννnu Ξξxi Οοomicron
Ππpi
Ρρrho
Σσsigma
ττtau
υυupilon
Φφphi
Χχ池 Ψψpsi
Ωωmega
编辑:从评论中复制,与其他字词结合使用时请使用:expression(Delta*"price")
答案 2 :(得分:10)
您不需要latex2exp
包来执行您想要执行的操作。以下代码可以解决问题。
ggplot(smr, aes(Fuel.Rate, Eng.Speed.Ave., color=Eng.Speed.Max.)) +
geom_point() +
labs(title=expression("Fuel Efficiency"~(alpha*Omega)),
color=expression(alpha*Omega), x=expression(Delta~price))
此外,一些评论(此时尚未回答)询问在希腊字母后加上星号(*)。 expression(alpha~"*")
有效,所以我建议尝试一下。
有关获取Δ Price
的更多评论,我发现实现这一目标的最简单方法是expression(Delta~price))
。如果你需要在希腊字母之前添加一些东西,你也可以这样做:
获得你的expression(Indicative~Delta~price)
: