2016-01-27 3 views
3

Использование facet_wrap(), я хочу, чтобы маркировать каждый отдельный участок с математическим выражением:ggplot2 facet_wrap с математическим выражением

library(ggplot2) 

x  <- rnorm(100, 50, 10) 
y  <- rnorm(100, 50, 10) 
grp  <- rep(c("a", "b", "c", "d"), each=25) 
test.df <- data.frame(grp, x, y) 
mean.df <- aggregate(test.df[c("x", "y")], test.df["grp"], mean) 

p <- ggplot(test.df) + 
    geom_point(aes(x=x, y=y, col=grp)) + 
    facet_wrap(~ grp) + 
    geom_text(data=mean.df, aes(x=x, y=y, label=paste("xbar=", round(x,1)))) 
p 

Я хочу \ бар (х) вместо Xbar. Я попробовал выражение(), но получаю: «не может принуждать класс» к выражению «» к data.frame ».

ответ

5

Использование

geom_text(data = mean.df, parse = TRUE, 
      aes(x = x, y = y, label = paste("bar(x) ==", round(x, 1)))) 

помогает.

enter image description here