superponer - Cómo etiquetar una barra de gráfico de barras con barras positivas y negativas con ggplot2
superponer graficas en r ggplot (1)
Estoy tratando de trazar un gráfico de barras etiquetado con ggplot2 con barras positivas y negativas. Eso funciona hasta ahora, pero me gustaría colocar la etiqueta fuera de la barra, de modo que esté arriba o debajo de la barra. Intenté establecer un ajuste en vjust = c(x1,...,xn)
donde x
es un valor positivo o negativo de acuerdo con el valor de la barra en geom_text()
. Esto no funciona. Acabo de recibir el mensaje de error Error: "Al configurar la estética, solo pueden tomar un valor. Problemas: vjust"
Con el comando de la trama normal que funciona. Quiero replicar este comando en ggplot2:
xpos <- barplot(d, col=mycols, main=''Verteilung in Dresden 2004'',
ylab=''Anteil in %'', xlab=''Milieu'', names.arg=l,
cex.axis=0.7, cex.names=0.7, ylim=c(0,max(d)+0.05))
boxed.labels(xpos,d+0.02,sprintf(''%d%s'', d*100, ''%''),
bg=''transparent'', border=FALSE, cex=0.7)
Para que se vea así solo en bonito ... ;-)
¿Alguien tiene alguna sugerencia?
Gracias por tu ayuda.
Esto hace el truco
library(plyr)
library(ggplot2)
library(scales)
dtf <- data.frame(x = c("ETB", "PMA", "PER", "KON", "TRA",
"DDR", "BUM", "MAT", "HED", "EXP"),
y = c(.02, .11, -.01, -.03, -.03, .02, .1, -.01, -.02, 0.06))
ggplot(dtf, aes(x, y)) +
geom_bar(stat = "identity", aes(fill = x), legend = FALSE) +
geom_text(aes(label = paste(y * 100, "%"),
vjust = ifelse(y >= 0, 0, 1))) +
scale_y_continuous("Anteil in Prozent", labels = percent_format()) +
opts(axis.title.x = theme_blank())