In diesem Kapitel sehen Sie grafische Methoden zur Exploration von Zusammenhängen von intervallskalierten Variablen und Drittvariablen.



Einfaches Streudiagramm



Script


# Streudiagramm für Körpergröße und IQ


plot(x=height, y=IQ, xlab="Körpergröße in cm", ylab="IQ-Punkte")


Plot







Streudiagramm mit Regressionsgerade



Script


# Berechnung der Koeffizienten der linearen Regression


lm(formula=fussball$tore~fussball$spiele)


Console


Call:
lm(formula = fussball$tore ~ fussball$spiele)

Coefficients:
(Intercept) fussball$spiele
2.1280 0.4774








Script


# Zeichnung des Streudiagramms


plot(fussball$spiele, fussball$tore,
ylab="Anzahl geschossener Tore", xlab="Anzahl gespielter Spiele")


# Hinzufügen der Regressionsgerade in das Streudiagramm


abline(lm(fussball$tore~fussball$spiele))


Plot







Streudiagramm mit Loess-Kurve



Script


# Zeichnen der Loess-Kurve mit normalverteilter Gewichtungsfunktion (diese Gewichtung
# wird standardmäßig mit der Funktion scatter.smooth genutzt) mit einem Anteil
# einbezogener Daten von 70% (span=.7)


scatter.smooth(bsp02$income, bsp02$life_expectancy, ylab="Lebenserwartung in Jahren",
xlab="Durchschnittliches pro Kopf Jahreseinkommen in USD",
span=.7)


Plot




Verwendung der Potenzleiter





Script


#Transformation mit dem natürlichen Logarithmus


log_income <- log(bsp02$income)

scatter.smooth(log_income, bsp02$life_expectancy, span=(2/3), xaxt="n",
ylab="Lebenserwartung in Jahren",
xlab="Durchschnittliches pro Kopf Jahreseinkommen in USD")


# x-Achse in Originaleinheiten


axis(1, at = 5:11, labels = round(exp(5:11)))


Plot







Streudiagramm bei Overplotting



Script


# Zufallsrauschen


plot(jitter(bsp01$AZ),jitter(bsp01$LZ),
ylab="Lebenszufriedenheit", xlab="Arbeitszufriedenheit")


Plot










Script


# Sonnenblumendiagramm


sunflowerplot(bsp01$AZ,bsp01$LZ, ylab="Lebenszufriedenheit",
xlab="Arbeitszufriedenheit")
# die Legende haben wir nachträglich hinzugefügt
text(1,2, " 1 Wert", cex=.7, pos=4); text(1,1, " 4 Werte", cex=.7, pos=4)
text(2,4, " 3 Werte", cex=.7, pos=4); text(2,3, " 11 Werte", cex=.7, pos=4)
text(2,2, " 5 Werte", cex=.7, pos=4)


Plot







Streudiagramm-Matrix



Script


# Streudiagramm-Matrix mit Loess-Kurven


pairs(bsp01[,3:6], panel=panel.smooth, col.smooth="black", span=c(2/3), lwd=2)


Plot







Streudiagramme mit 3 Variablen



Script


# Dreidimensionales Streudiagramm für Stress, Lebens- und Arbeitszufriedenheit


library(scatterplot3d)
scatterplot3d(jitter(bsp01$Stress),jitter(bsp01$LZ),jitter(bsp01$AZ),
xlab="Stresserleben",
ylab="Lebenszufriedenheit",
zlab="Arbeitszufriedenheit",
type="h")


Plot











Script


# Bubbleplot mit dem Paket: googleVis


bubble<- gvisBubbleChart(
data=jitter_bsp, idvar="no", xvar="AZ", yvar="LZ",
colorvar="Stress",
sizevar="Stress",
options=list(width=500, height=500,
hAxis='{minValue:0, maxValue:5, title: "Arbeitszufriedenheit"}',
vAxis='{minValue:0, maxValue:5, title: "Lebenszufriedenheit"}',
sizeAxis='{minSize:1, maxSize:9}',
legend='{position:"none"}',
bubble='{stroke:"black", textStyle:{color:"none"}}',
colorAxis='{colors:["grey", "grey"], legend:{position:"none"}}')
)
plot(bubble)


Plot










Script


# Streudiagramm für Drittvariable mit Symbolen


plot(jitter(bsp01$Stress),jitter(bsp01$AZ),


# Dritte Variable als Symbol


pch=bsp01$LZ,


# x-Achse nur für die bessere Sichtbarkeit der Legende verändert


xlim=c(3,11),
cex.main=.8,
xlab="Stresserleben",
ylab="Arbeitszufriedenheit")


# Hinzufügen der Legende


legend("topright", pch=1:5, legend=c("LZ=1","LZ=2","LZ=3","LZ=4","LZ=5"))


Plot