Nós usamos Gráficos de Dispersão (Scatterplots) quando queremos representar duas variáveis (pseudo-)métricas. Para isso, utilizamos a função geom_point()
.
Muitas vezes, temos apenas variáveis pseudo-métricas, no entanto, ainda podemos usar Gráficos de Dispersão para visualização. Agora vamos usar trstplt
e trstprt
. Se você não se lembra mais do que essas variáveis representam, consulte o Codebook!
scatter <- ggplot(
pss,
aes(
trstplt,
trstprt
)
) +
geom_point()
scatter
## Warning: Removed 28 rows containing missing values or values outside the scale range
## (`geom_point()`).
Para poder identificar mais informações no gráfico, precisamos espalhar os pontos de dados para que não se sobreponham. Pois em uma variável pseudo-métrica, geralmente temos apenas valores inteiros, fazendo com que pares de dados se sobreponham. Para isso, utilizamos a função 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()`).
Nos argumentos de geom_jitter()
, você especifica o quão longe os pontos de dados devem ser espalhados. Experimente algumas vezes com valores diferentes.
Agora vamos adicionar legendas e títulos.
scatter +
geom_point() +
geom_jitter(
width = 0.3,
height = 0.3
) +
labs(
x = "Trust in Politicians",
y = "Trust in Legal System",
title = "Trust Scatterplot"
)
E alteramos a aparência do título: Dentro da função theme()
, vamos modificar a apresentação. Para entender exatamente o que os argumentos fazem, você aprenderá no Capítulo 3!
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()`).
Também vamos especificar a fonte de dados. Isso é feito usando a função lab()
com o argumento caption
:
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()`).
A variável possui apenas valores inteiros, mas as marcações estão sempre nos pontos médios. Vamos corrigir isso agora:
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()`).
Também podemos adicionar uma linha de regressão para a relação entre as duas variáveis. Para isso, usamos a função geom_smooth()
. No argumento method
, indicamos que se trata de um modelo linear (lm
), o intervalo de confiança deve ser plotado (se = TRUE
) e definimos as cores.
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()`).
Vamos continuar e agora você irá adicionar uma variável de grupo!