ggplot facet带文本中的符号

时间:2017-02-17 18:59:35

标签: r ggplot2

我想将G * 1 放入facet strip文本中。我可以得到*而我可以得到G 1 但我不能同时得到它们。 (上面的图片不太正确,因为1太远了,this稍微好一点。)这是一个小例子:

df<-data.frame(mu=rnorm(12,0,1), p=rnorm(12,0,1), alpha=as.factor(rep(1:4,each=3)))

#This won't run
ggplot(df)+
  geom_point(aes(x=mu,y=p))+
  facet_wrap(~alpha, labeller =label_bquote(Q*"*"*[.(alpha)]))

#This puts the star way too high
ggplot(df)+
  geom_point(aes(x=mu,y=p))+
  facet_wrap(~alpha, labeller =label_bquote(Q[.(alpha)]^paste("*")))

#This puts the star too far right
ggplot(df)+
  geom_point(aes(x=mu,y=p))+
  facet_wrap(~alpha, labeller =label_bquote(Q[.(alpha)]*"*"))

#This puts U+2605 instead of the star
ggplot(df)+
  geom_point(aes(x=mu,y=p))+
  facet_wrap(~alpha, labeller =label_bquote(Q[.(alpha)]^"\u2605"))

在阅读完第一条评论后,我认为它可能是字体,但我可以使用以下方式显示一颗星:

df<-data.frame(mu=rnorm(12,0,1), p=rnorm(12,0,1), alpha=paste("\u2605",rep(1:4,each=3)))

ggplot(df)+
  geom_point(aes(x=mu,y=p))+
  facet_wrap(~alpha)

1 个答案:

答案 0 :(得分:0)

在我看来这应该有用:

library(ggplot2)

ggplot(df)+
  geom_point(aes(x=mu,y=p))+
  facet_wrap(~alpha, labeller = label_bquote("Q"*"*"[.(alpha)]))