Frequentemente, é necessário ajustar os eixos para melhor representar os dados. Se você tentou exibir os valores acima das barras e percebeu que nem todos os valores de cada barra foram exibidos, provavelmente a causa foi que o eixo y era muito curto. Você pode facilmente limitar os eixos na função scale_x_continuous()
. O continuous
é usado aqui porque trata-se de uma variável contínua (tipo integer ou numeric). Para limitar, você utiliza o argumento limits = c(...)
e especifica o mínimo e o máximo.
barplotBeyonce <- barplotBeyonce +
geom_text(
stat = "count",
aes(label = ..count..),
vjust = -2.5,
size = 8,
color = "white"
) +
scale_y_continuous(
limits = c(
0,
1750
)
)
barplotBeyonce
## Warning: The dot-dot notation (`..count..`) was deprecated in ggplot2 3.4.0.
## ℹ Please use `after_stat(count)` instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
Da mesma forma, você pode determinar as marcações dos eixos na função scale_y_continuous
. Isso é feito no argumento breaks
, onde você simplesmente especifica uma sequência.
barplotBeyonce <- barplotBeyonce +
scale_y_continuous(
breaks = seq(
0,
1750,
100
),
limits = c(
0,
1750
)
)
barplotBeyonce
O mesmo vale para o eixo x: Você sabe que a variável edu
é um fator com cinco níveis (além de NA
). Portanto, não é uma variável contínua. Por isso, você usa a função scale_x_discrete()
aqui.
barplotBeyonce <- barplotBeyonce +
scale_x_discrete(
limits = c(
"ES-ISCED I",
"ES-ISCED II",
"ES-ISCED III",
"ES-ISCED IV",
"ES-ISCED V",
NA
)
)
barplotBeyonce
Portanto, ao lidar com variáveis não contínuas, você precisa mostrar as categorias que deseja exibir.
Atualmente, a legenda está sendo exibida à direita. Você pode alterar isso conforme desejar com o argumento legend.position
dentro da função adicional theme()
:
barplotBeyonce +
theme(legend.position = "bottom") # left, right, top ou none
Você também pode ajustar a legenda:
barplotBeyonce +
scale_fill_manual(
name = "Bildungsniveau",
labels = c(
"sehr niedrig",
"niedrig",
"mittel",
"hoch",
"sehr hoch",
"NA"
),
values = beyonce_palette(25)
)
Agora faltam apenas as etiquetas dos eixos e o título personalizados!
barplotBeyonce +
labs(
x = "Bildungsniveau",
y = "Häufigkeiten",
title = "My first try with ggplot2"
)
Tudo claro? Continue!