Ich versuche ein Balkendiagramm zu erstellen, das die monatlichen ein- und ausgehenden Anrufe anzeigt. Wenn ich ein gestapeltes Balkendiagramm erstelle, möchte ich in der Lage sein, die Stapel für die Top-3-Kontakte (mit der höchsten Anrufdauer) anzuzeigen und den Rest als andere anzuzeigen. Gibt es eine Möglichkeit, dies in R zu automatisieren?Zeige nur Top 3 Einträge und bleib als "Others" im gestapelten Barplot mit ggplot2
Mein jetziger Diagramm sieht wie folgt aus:
Meine Datenrahmen (callsummary) heruntergeladen werden kann (3 kb) aus dem unten stehenden Link:
https://dl.dropboxusercontent.com/u/4077057/callsummary.csv
Mein Code für ggplot ist:
ggplot(callsummary) +
aes(x = Bill, y = Duration) +
geom_bar(stat = "identity", aes(fill =Contact)) +
facet_grid(~Direction) +
labs(list(title = "Monthly Call Summary", x = "Month", y = "Total Call duration in Minutes")) +
geom_hline(data = subset(monthlysummary, Direction == "In"), aes(yintercept = mean(Duration))) +
geom_hline(data = subset(monthlysummary, Direction == "Out"), aes(yintercept = mean(Duration)))
Beachten Sie, dass ich eine andere Datafra erstellt habe Ich habe monatliche Zusammenfassung nur aufgerufen, um in der Lage zu sein, einen y-Abschnitt hinzuzufügen, der gleich der durchschnittlichen Anrufdauer in beiden "In" - und "Out" -Gittern ist.
Die monthlysummary Datenrahmen wie folgt aussieht:
Direction Bill Duration Amount
<fctr> <fctr> <dbl> <dbl>
1 Out April 9.3 1.40
2 In April 55.3 0.00
3 Out May 32.5 4.89
4 In May 76.9 0.00
5 Out June 17.4 2.62
6 In June 114.3 0.00
Zusätzliche Reihen von „Out“ Kategorie –
Die bevorzugte Art und Weise hinzugefügt, um Ihre Daten zu schreiben sind mit 'dput' – Sumedh
würde ich ausgewichen barplots statt gestapelt barplots vorschlagen, so dass Sie Vergleiche entlang einen nicht ausgerichtet y-Achse machen könnten. Wenn Sie Zusammenfassungen des Mittelwerts erstellen, sollten Sie in Erwägung ziehen, gruppierte Boxplots zu plotten. – shayaa