Einfache Balkendiagramm in R erstellen

DKK007

PCGH-Community-Veteran(in)
Ich habe ein kleines Problem mit dem erstellen eines Diagrammes in R.
Es soll einfach nur ein Balkendiagramm von einer mittels Select auf zwei Spalten reduzierten Tabelle geplottet werden. Aber irgendwie nimmt er die Werte nicht richtig.

select(tab2,Straftat,Aufklärungsquote)

## Straftat Aufklärungsquote
## 1 Straftaten insgesamt 57.46745
## 2 Straftaten gegen das Leben 90.07859
## 3 Mord 91.38889
## 4 Totschlag 95.11731
## 5 Straftaten gegen die sexuelle Selbstbestimmung 80.16618
## 6 Körperverletzung 88.60886
## 7 Gefährliche Körperverletzung 75.95423
## 8 Straftaten gegen die persönliche Freiheit 88.58885
## 9 Diebstahl 40.34629
## 10 Einbruchdiebstahl (einschl. Wohnungseinbruchdiebstahl) 17.42613
## 11 Betrug 66.57919
## 12 Unterschlagung 46.73575
## 13 Urkundenfälschung 81.36759
## 14 Beleidigung 89.78415
## 15 Straftaten gegen die Umwelt 55.94842

Ich hatte es jetzt damit versucht.
ggplot(select(tab2,Straftat,Aufklärungsquote), aes(x = Straftat), main="Auflärungsquote nach Straftat") + geom_bar()+coord_flip()

Als Ergebnis kommt aber das raus:

00003a.png

Eigentlich hätte ich gerne so was wie hier mit Excel:
1616339959684.png
 
Zuletzt bearbeitet:
Moin DKK007,

ohne die Daten und das Script ist es schwer die genauen Fehler zu finden.

Ich mache das immer so, dass ich für jede Grafik eine eigene Tabelle, bzw. ein eigenes data.frame, erzeuge.
Du musst da nicht mit dem select Befehl arbeiten, geht aber sich irgendwie auch(habe den noch nie benutzt, bin aber auch kein Profi :D). Ich nehme da meist subset.

Dann baust du das einfach in den ggplot Befehl ein. Da hast du bei dir z.B. der Y-Achse nichts zugwiesen. Das solltest du ändern, sonst hat R ja keine Daten die es einfügen kann ;)
Als kleine Anregung:
Code:
ggplot(data=data, aes(x=Art, y=Anzahl)) + 
  geom_bar(colour="black", fill=c("#DD8888"), width=.5, stat="identity") + 
  xlab("Art der Straftat") + ylab("Aufklärungsquote") +
  ggtitle("Aufklärungsquote 2020") + 
  coord_flip()
1616349453133.png
 
Vielen Dank für deine Hilfe.
Ich habe es nun selbst lösen können.

geom_bar scheint Werte aufzusummieren. Wenn man bereits absolute Werte in der Tabelle hat, muss man wohl geom_col nehmen. Damit ging es dann.

ggplot(select(tab2,Straftat,Aufklärungsquote), aes(x = Straftat, y = Aufklärungsquote)) + geom_col(colour = "red", fill="red")+coord_flip() + ggtitle("Auflärungsquote nach Straftat")

Das einzige "Problem" was noch da ist, ist dass die Balken umsortiert werden.

000005.png
 
Zurück