2017-07-17 2 views
0

Ich habe ein Balkendiagramm mit meiner unabhängigen Variable auf der x-Achse (Education-Ebene) und die Anzahl meiner abhängigen Variablen auf der y-Achse (Standard auf Kreditkartenschulden).Overlay Prozentsatz für Barplot, während auf der y-Achse zählen

ggplot(cleancc, aes(x=factor(Education), fill = factor(DefaultOct05))) + geom_bar()

enter image description here

Ich möchte alles halten, wie zeigen, sondern einfach die Prozentsätze für jede Pause in der Bar. Zum Beispiel ist der blaue Teil des Balkens 2 23,7%.

Antwort

0

Als ich ich es nicht nicht Dataset haben kann versuchen, aber mit stat_bin diese Option check out():

ggplot(cleancc, aes(x=factor(Education), fill = factor(DefaultOct05))) + 
geom_bar() + 
stat_bin(geom = "text", 
     aes(label = paste(round((..count..)/sum(..count..)*100), "%")), 
     vjust = 5) 
+0

Danke, das hilft viel. Aber stat_bin() gab einen Fehler aus. Ich habe stattdessen stat_count() verwendet. Das einzige Problem ist, dass die Prozentsätze sich auf den gesamten Datensatz beziehen. Ich möchte den prozentualen Anteil der einzelnen Balken anzeigen. Zum Beispiel, (Blau und Rot sollten für jeden Balken 100% betragen). – Eitan

+0

Wie Sie bereits gesagt haben, ist Ihre Frage ähnlich wie auf der Seite im Link vorgeschlagen. Versuchen Sie den folgenden Weg, der von der verbundenen Seite justiert wird: 'Zusammenfassung = cleancc%>% group_by (Bildung, DefaultOct05)%>% Tally%>% group_by (Ausbildung)%>% mutieren (pct = n/sum (n), n.pos = cumsum (n) - 0,5 * n) ggplot (Zusammenfassung, aes (x = Bildung, y = n, füllen = DefaultOct05)) + geom_bar (stat = "Identität") + geom_text (aes (label = paste0 (sprintf ("% 1.1f", pkt * 100), "%"), y = n.pos), color = "weiß") ' – valz

Verwandte Themen