manually - remove legend title ggplot2
ggplot2 position=''esquivar'' produciendo barras que son demasiado anchas (1)
Estoy interesado en producir un histograma con position = ''dodge'' y fill = algún factor (es decir, barras lado a lado para diferentes subgrupos dentro de cada barra / grupo), pero ggplot2 me da algo así como la primera gráfica aquí , que tiene una barra a la derecha que es demasiado ancha y no reserva espacio para el grupo vacío, lo cual me gustaría.
Aquí hay un caso simple:
df = data.frame(a=c(''o'',''x'',''o'',''o''), b=c(''a'',''b'',''a'',''b''))
qplot(a, data=df, fill=b, position=''dodge'')
Desde ggplot geom_bar - barras demasiado anchas obtuve esta idea, y aunque técnicamente produce una barra del mismo ancho, pero no conserva espacio para el grupo vacío:
ggplot(df, aes(x=a, fill=a))+
geom_bar(aes(y=..count../sum(..count..))) +
facet_grid(~b,scales="free",space="free")
¿Cómo logro lo que quiero? Gracias por adelantado.
Las opciones predeterminadas en ggplot
producen lo que creo que describes. Las opciones de scales="free"
y space="free"
hacen lo contrario de lo que desea, así que simplemente elimínelas del código. Además, la stat
predeterminada para geom_bar
es agregar por conteo, por lo que no tiene que especificar su estadística explícitamente.
ggplot(df, aes(x=a, fill=a)) + geom_bar() + facet_grid(~b)