我正在尝试覆盖某些ggplot带中的文本以合并希腊字符。这是一些示例数据,以及绘图的基础。

dfr <- data.frame(
   x = rep(1:10, times = 6),
   y = runif(60),
   fx = rep(c("foo", "bar"), each = 30),
   fy = rep(c("alpha", "beta", "gamma"), each = 10, times = 2)
)

p <- ggplot(dfr, aes(x, y)) + geom_point()

我第一次尝试绘图时,标签上没有希腊语。
 p + facet_grid(fy ~ fx)

我认为应该在facet_grid中添加一个labeller参数以覆盖文本。我以为这应该吐出一个表达式来处理希腊字符,但是在打印图形时,我的代码只会引发错误。
lbl <- function(variable, value)
{
   if(variable == "fy") parse(text=as.character(value)) else value
}
p + facet_grid(fy ~ fx, labeller = lbl)


Error in aperm(X, c(s.call, s.ans)) :
  unimplemented type 'expression' in 'aperm'

我应该如何创建带状标签?

最佳答案

试试这个:

p + facet_grid(fy ~ fx, labeller = label_parsed)

关于r - ggplot条文本中的希腊字母,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2403466/

10-09 08:51