Wir nutzen Scatterplots (Punktewolken), wenn wir zwei (pseudo-)metrische Variablen darstellen möchten. Dazu nutzen wir die Funktion geom_point()
.
Oftmals haben wir lediglich pseudometrische Variablen, dennoch können wir trotzdem Scatterplots zur Visualisierung nutzen. Wir nutzen nun trstplt
und trstprt
. Falls du nicht mehr weißt, wofür diese Variablen stehen, schaue im Codebook nach!
scatter <- ggplot(
pss,
aes(
trstplt,
trstprt
)
) +
geom_point()
scatter
## Warning: Removed 28 rows containing missing values or values outside the scale range
## (`geom_point()`).
Um nun mehr auf dem Plot erkennen zu können, müssen wir die Datenpunkte streuen, damit sie nicht alle überlappen. Denn auf einer pseudo-metrischen Variablen haben wir ja meist nur ganzzahlige Werte, so dass Datenpaare überlappen. Dazu nutzen wir die Funktion geom_jitter()
:
scatter <- scatter +
geom_jitter(
width = 0.3,
height = 0.3
)
scatter
## Warning: Removed 28 rows containing missing values or values outside the scale range
## (`geom_point()`).
## Removed 28 rows containing missing values or values outside the scale range
## (`geom_point()`).
In den Argumenten in geom_jitter()
gibst du an, wie weit die Datenpunkte jittern sollen. Probiere es einfach ein paar Mal mit unterschiedlichen Werten aus.
Nun fügen wir noch Beschriftungen und Titel hinzu.
scatter +
geom_point() +
geom_jitter(
width = 0.3,
height = 0.3
) +
labs(
x = "Trust in Politicians",
y = "Trust in Legal System",
title = "Trust Scatterplot"
)
Und verändern das Erscheinungsbild des Titels: Innerhalb der Funktion theme()
ändern wir noch die Darstellung, was die Argumente genau machen, lernst du Kapitel 3 kennen!
scatter <- scatter +
labs(
x = "Trust in Politicians",
y = "Trust in Legal System",
title = "Trust Scatterplot"
) +
theme(
plot.title = element_text(
face = "bold",
hjust = 0.5,
size = 16
)
)
scatter
## Warning: Removed 28 rows containing missing values or values outside the scale range
## (`geom_point()`).
## Removed 28 rows containing missing values or values outside the scale range
## (`geom_point()`).
Die Datenquelle geben wir auch an. Dies fügen wir mit der Funktion lab()
und dem Argument caption
hinzu:
scatter <- scatter +
labs(caption = "Data source: Panem Social Survey.")
scatter
## Warning: Removed 28 rows containing missing values or values outside the scale range
## (`geom_point()`).
## Removed 28 rows containing missing values or values outside the scale range
## (`geom_point()`).
Die Variable hat nur ganzzahlige Werte, die Markierungen sind aber immer im Halbpunkt. Das ändern wir nun:
scatter <- scatter +
scale_y_continuous(
breaks = seq(
0,
10,
1
)
) +
scale_x_continuous(
breaks = seq(
0,
10,
1
)
)
scatter
## Warning: Removed 28 rows containing missing values or values outside the scale range
## (`geom_point()`).
## Removed 28 rows containing missing values or values outside the scale range
## (`geom_point()`).
Ebenso können wir bereits eine Regressionlinie für den Zusammenhang zwischen den zwei Variablen einzeichnen. Dazu nutzen wir die Funktion geom_smooth()
. Im Argument method
geben wir an, dass es sich um ein lineares Modell handelt (lm
), das Konfidenzintervall soll eingezeichnet werden (se = TRUE
) und wir legen Farben fest.
scatter +
geom_smooth(
method = "lm",
se = TRUE,
color = "darkred",
fill = "orange"
)
## Warning: Removed 28 rows containing non-finite outside the scale range
## (`stat_smooth()`).
## Warning: Removed 28 rows containing missing values or values outside the scale range
## (`geom_point()`).
## Removed 28 rows containing missing values or values outside the scale range
## (`geom_point()`).
Weiter geht’s und du fügst jetzt eine Gruppenvariable hinzu!