Ich möchte nicht verwendete Ebenen (dh Ebenen mit einer Anzahl von 0) in meinem Balkendiagramm darstellen. Nicht verwendete Ebenen werden jedoch gelöscht, und ich kann nicht herausfinden, wie sie beibehalten werden sollen
df <- data.frame(type=c("A", "A", "A", "B", "B"), group=rep("group1", 5))
df$type <- factor(df$type, levels=c("A","B", "C"))
ggplot(df, aes(x=group, fill=type)) + geom_bar()
Im obigen Beispiel möchte ich C mit einer Zählung von 0 zeichnen sehen, aber es fehlt vollständig ...
Danke für jede Hilfe Ulrik
Bearbeiten:
Das macht was ich will
df <- data.frame(type=c("A", "A", "A", "B", "B"), group=rep("group1", 5))
df1 <- data.frame(type=c("A", "A", "A", "B", "B", "A", "A", "C", "B", "B"), group=c(rep("group1", 5),rep("group2", 5)))
df$type <- factor(df$type, levels=c("A","B", "C"))
df1$type <- factor(df1$type, levels=c("A","B", "C"))
df <- data.frame(table(df))
df1 <- data.frame(table(df1))
ggplot(df, aes(x=group, y=Freq, fill=type)) + geom_bar(position="dodge")
ggplot(df1, aes(x=group, y=Freq, fill=type)) + geom_bar(position="dodge")
Vermutlich besteht die Lösung darin, die Frequenzen mithilfe von table () zu berechnen und dann zu zeichnen