Geeignete Grafik

Wie erstelle ich Grafiken, was ist zu beachten?

Moderatoren: EDi, jogo

Antworten
primele
Beiträge: 2
Registriert: So Aug 04, 2019 11:49 am

Geeignete Grafik

Beitrag von primele » So Aug 04, 2019 6:25 pm

Hallo Zusammen,

ich bin leider komplett verzweifelt.
Ich habe nahezu keine R-Kenntnisse und muss bis Mittwoch eine Hausarbeit schreiben.

Folgendes Szenario:
Ich habe einen vorgegebenen Datensatz, besteht aus den Variablen Berufsstatus (Schüler, Studenten usw.) und den Ausgaben für Weihnachtsgeschenke.
Die Forschungsfrage dazu lautet: Gibt es einen Zusammenhang zwischen dem Berufsstatus und den finanziellen Ausgaben für Weihnachtsgeschenke.

Diese möchte ich nun in einer Grafik darstellen und dachte, dass ich mit einem Histogram ganz gut fahre, hänge jetzt allerdings. Ist das Verfahren überhaupt geeignet? Folgenden Befehl habe ich eingegeben:
hist(Muenchen$Status, col = blues9) Ich möchte allerdings den Berufsstatus in Relation zu den Ausgaben haben und verstehe nicht ganz, wie ich den Befehl weiter ausführen muss.

Ich hoffe ihr könnt mir helfen.

Danke und LG

jogo
Beiträge: 1524
Registriert: Fr Okt 07, 2016 8:25 am

Re: Geeignete Grafik

Beitrag von jogo » Mo Aug 05, 2019 8:55 am

Hallo primele,

willkommen im Forum!
Wie wäre es mit einem Boxplot:

Code: Alles auswählen

boxplot(Petal.Length ~ Species, data=iris)
Gruß, Jörg

bigben
Beiträge: 1126
Registriert: Mi Okt 12, 2016 9:09 am

Re: Geeignete Grafik

Beitrag von bigben » Mo Aug 05, 2019 5:58 pm

Und wenn es doch bei Histogrammen bleiben soll, könnte das so aussehen:

Code: Alles auswählen

beispiel <- data.frame(werte = c(rnorm(20,11,2), runif(20,6,9), rnorm(20,7,1)),
                       gruppe = gl(3,20, labels = c("Schueler*innen", "Studierende", "Sonstige")))

par(mfrow=c(3,1))
for(i in levels(beispiel$gruppe))
  hist(beispiel$werte[beispiel$gruppe == i], xlim=c(0,20), main="", 
       xlab=paste(i), ylab="Anzahl", col="dodgerblue")
LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte

bigben
Beiträge: 1126
Registriert: Mi Okt 12, 2016 9:09 am

Re: Geeignete Grafik

Beitrag von bigben » Mo Aug 05, 2019 6:25 pm

Je nach Umfang der Beobachtung kann es auch sehr instruktiv sein, die Werte für sich sprechen zu lassen, beispielsweise so:

Code: Alles auswählen

par(mfrow=c(1,1))
plot(beispiel$werte ~ jitter(as.numeric(beispiel$gruppe)),
     xaxt="n", xlab="Gruppe", ylab="Weihnachtsgeschenk", pch=16)
axis(1, at=1:3, labels=levels(beispiel$gruppe))
Oder doch lieber etwas abstrahiert:

Code: Alles auswählen

plot(density(beispiel$werte[beispiel$gruppe=="Schueler*innen"], adjust=2), 
     xlim=c(0,20), ylim=c(0,.5),col="dodgerblue", main="")
lines(density(beispiel$werte[beispiel$gruppe=="Studierende"], adjust = 2), col="firebrick")
lines(density(beispiel$werte[beispiel$gruppe=="Sonstige"], adjust=2), col="forestgreen")
LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte

primele
Beiträge: 2
Registriert: So Aug 04, 2019 11:49 am

Re: Geeignete Grafik

Beitrag von primele » Mo Aug 05, 2019 7:45 pm

Vielen vielen lieben Dank, es hat sofort geklappt. :)

Und anhand der richtigen Grafiken kann ich mir die Befehle auch besser erklären und verstehen.

Viele Grüße und einen schönen Abend.
Primel

ruedi_br
Beiträge: 54
Registriert: Do Mär 01, 2018 3:53 pm

Re: Geeignete Grafik

Beitrag von ruedi_br » Do Aug 08, 2019 2:15 pm

Was nebenher noch einen Blick auf die Verteilung der einzelnen Werte zuließe wäre ein Violinplot. Braucht dann allerdings ggplot2 oder lattice.
In ggplot2:

Code: Alles auswählen

ggplot(werte, aes(x=Gruppe,y=Ausgaben)) + geom_boxplot()+ geom_violin(scale="count")
Grüeß
Ruedi
fortune(111)

Antworten