ggplot2 を使用してヒストグラムのパネルを作成しています。各グループの平均に垂直線を追加できるようにしたいと考えています。しかし、 geom_vline() は各パネルに同じ切片 (つまり、グローバル平均) を使用します。
require("ggplot2")
# setup some sample data
N <- 1000
cat1 <- sample(c("a","b","c"), N, replace=T)
cat2 <- sample(c("x","y","z"), N, replace=T)
val <- rnorm(N) + as.numeric(factor(cat1)) + as.numeric(factor(cat2))
df <- data.frame(cat1, cat2, val)
# draws a single histogram with vline at mean
qplot(val, data=df, geom="histogram", binwidth=0.2) +
geom_vline(xintercept=mean(val), color="red")
# draws panel of histograms with vlines at global mean
qplot(val, data=df, geom="histogram", binwidth=0.2, facets=cat1~cat2) +
geom_vline(xintercept=mean(val), color="red")
各パネルのグループ平均を x 切片として使用するにはどうすればよいですか? (平均値の行にテキスト ラベルを追加することもできればボーナス ポイントです。)