2012-05-17 9 views
8

En el pasado, he sido capaz de crear diagramas de caja usando ggplot2 al proporcionar el bigote inferior, el cuantil inferior, la mediana, el cuantil superior y el bigote superior junto con las etiquetas del eje x. Por ejemplo:geom_boxplot con valores precalculados

DF <- data.frame(x=c("A","B"), min=c(1,2), low=c(2,3), mid=c(3,4), top=c(4,5), max=c(5,6)) 
ggplot(DF, aes(x=x, y=c(min,low,mid,top,max))) + 
geom_boxplot() 

haría un diagrama de caja para dos conjuntos de datos (A & B). Esto ya no funciona para mí. Me sale el siguiente error:

Error: Aesthetics must either be length one, or the same length as the dataProblems:x 

¿Alguien sabe si algo ha cambiado en ggplot2?

+1

Puesto que podría ser un cambio entre versiones de ggplot2, qué versión estás usando ('sessionInfo()'). Estoy usando ggplot2_0.9.0 en R 2.15.0 y funciona para mí, así que supongo que debe ser algo relacionado con la versión R o ggplot2. –

Respuesta

11

Esto funciona mediante ggplot2 versión 0.9.1 (y R 2.15.0)

library(ggplot2) 

DF <- data.frame(x=c("A","B"), min=c(1,2), low=c(2,3), mid=c(3,4), top=c(4,5), max=c(5,6)) 

ggplot(DF, aes(x=x, ymin = min, lower = low, middle = mid, upper = top, ymax = max)) + 
    geom_boxplot(stat = "identity") 

enter image description here

Consulte "Utilización de las estadísticas precalculados" ejemplo here