tick labs ggtitle ggplot change r ggplot2

labs - Anota las facetas ggplot2 con el número de observaciones por faceta



r ggplot change legend labels (1)

Posible duplicado:
Creando un diagrama facet_wrap con ggplot2 con diferentes anotaciones en cada trama
Agregue texto a un gráfico facetado en ggplot2 con fechas en el eje X.

De vez en cuando, al hacer facetas de los datos en ggplot, creo que sería bueno anotar cada faceta con el número de observaciones que caen en cada faceta. Esto es particularmente importante cuando la facetación puede dar lugar a relativamente pocas observaciones por faceta.

¿Cuál sería la mejor / más simple forma de agregar una "n = X" a cada faceta de esta gráfica?

require(ggplot2) mms <- data.frame(deliciousness = rnorm(100), type=sample(as.factor(c("peanut", "regular")), 100, replace=TRUE), color=sample(as.factor(c("red", "green", "yellow", "brown")), 100, replace=TRUE)) plot <- ggplot(data=mms, aes(x=deliciousness)) + geom_density() + facet_grid(type ~ color)


Parece que esto se ha preguntado antes, y al principio no pude ver cómo se conectaban. Estoy respondiendo esto aquí, pero dejándolo como no aceptado en caso de que alguien tenga algo más elegante. Además, el n = foo es un caso bastante común, y es de esperar que alguien obtenga algún beneficio de esta pregunta, aunque sea un poco duplicativo.

require(ggplot2) require(plyr) mms <- data.frame(deliciousness = rnorm(100), type=sample(as.factor(c("peanut", "regular")), 100, replace=TRUE), color=sample(as.factor(c("red", "green", "yellow", "brown")), 100, replace=TRUE)) mms.cor <- ddply(.data=mms, .(type, color), summarize, n=paste("n =", length(deliciousness))) plot <- ggplot(data=mms, aes(x=deliciousness)) + geom_density() + facet_grid(type ~ color) + geom_text(data=mms.cor, aes(x=1.8, y=5, label=n), colour="black", inherit.aes=FALSE, parse=FALSE) plot