Ich versuche, ein gestapeltes Balkendiagramm mit einer facet_wrap zu erstellen, aber ich möchte, dass die Reihenfolge meiner gestapelten Variablen ("entwickelt") gewendet wird. Ich habe die Faktoren neu geordnet und habe "order = descend()" sowie "scale_fill_manual" ausprobiert und nichts scheint zu funktionieren.ggplot2: Ändern der Reihenfolge der Stapel in einem Balkendiagramm
Hier ist mein Code:
developed=rep(c("developed","available"),6)
agriculture=rep(c(rep("loi",2), rep("dryland",2), rep("agroforestry",2)),2)
acres=c(7435,24254,10609,120500,10651,75606,6037,9910,4390,895,9747,46893)
islands=c(rep("All islands",6), rep("Oahu",6))
all_is2=data.frame(developed, agriculture, acres, islands)
head(all_is2)
developed agriculture acres island
1 developed loi 7435 All islands
2 available loi 24254 All islands
3 developed dryland 10609 All islands
4 available dryland 120500 All islands
5 developed agroforestry 10651 All islands
6 available agroforestry 75606 All islands
ändernden Faktor Ebenen der "Landwirtschaft" und "entwickelt"
all_is2$agriculture=factor(all_is2$agriculture,levels=c("loi","dryland","agroforestry"))
all_is2$developed=factor(all_is2$developed,levels=c("developed","available"))
levels(all_is2$developed)
[1] "developed" "available"
Dann Plotten:
ggplot(all_is2,aes(x=agriculture,y=acres,fill=developed))+
geom_bar(position="stack", stat="identity")+
facet_wrap(~islands)+ scale_fill_grey(start=0.8, end=0.2, name="")+ xlab("")+ylab("Acres")+theme_bw()+ scale_y_continuous(labels=comma)
Ich möchte die "entwickelten" Teile der Stäbe in Grau auf den "verfügbaren" Teilen der Stäbe, die schwarz sind. Und die Legende sollte auch der Reihenfolge der Bars entsprechen.
Auch ist es möglich, die facet_wrap "Alle Inseln" und "Oahu" an die Spitze der Grafik unter "Loi" "Dryland" und "Agroforestry" zu verschieben. Danke für Ihre Hilfe!!
Sie müssen die Reihenfolge der Faktoren umkehren. ('levels = c (" verfügbar "," entwickelt ")'). Und Facetten sind immer oben oder neben dem Plot, wenn Sie Etiketten unter einem Ansatz mit grid.arrange wollen, könnte der Weg sein. – Heroka
Ich habe das ausprobiert, die Faktoren bei levels = c ("available", "developed") belassen, aber was ich bekomme ist die oben aufgestapelte Graue und entwickelte Stacks auf der Unterseite in Schwarz. (http://imgur.com/ne3iNhk) –
Fast scheint wie ein Fehler. –