Trazado de conteos acumulados en ggplot2
Hay algunas publicaciones sobre cómo trazar densidades acumuladas en ggplot. Actualmente estoy usando la respuesta aceptada de¿Una forma más fácil de trazar la distribución de frecuencia acumulada en ggplot? Para trazar mis cuentas acumuladas. Pero esta solución implica pre-calcular los valores de antemano.
Aquí estoy buscando una solución ggplot pura. Vamos a mostrar lo que tengo hasta ahora:
x <- data.frame(A=replicate(200,sample(c("a","b","c"),1)),X=rnorm(200))
de ggplotstat_ecdf
Puedo usar ggplotstat_ecdf
, pero solo grafica densidades acumulativas:
ggplot(x,aes(x=X,color=A)) + geom_step(aes(y=..y..),stat="ecdf")
Me gustaría hacer algo como lo siguiente, pero no funciona:
ggplot(x,aes(x=X,color=A)) + geom_step(aes(y=..y.. * ..count..),stat="ecdf")
cumsum
ystat_bin
Encontré una idea acerca de usarcumsum
ystat_bin
:
ggplot(x,aes(x=X,color=A)) + stat_bin(aes(y=cumsum(..count..)),geom="step")
Pero como puedes ver, el siguiente color no comienza eny=0
, pero donde terminó el último color.
Lo que me gustaría tener de mejor a peor:
Lo ideal sería una solución sencilla a la que no funciona.
ggplot(x,aes(x=X,color=A)) + geom_step(aes(y=..y.. * ..count..),stat="ecdf")
Una forma más complicada de usar.stat_ecdf
con cuentas.
cumsum
Enfoque, ya que da peores (binned) resultados.