Søjlediagrammer er gode til at illustrere fordelingen af kategoriske variable. F.eks. hvor mange mænd hhv. kvinder har man i en gruppe - eller i flere forskellige grupper, hvis man ønsker at vide om kønsfordelingen i grupperne er ens (eller nogenlunde ens). Datasættet indeholder en registrering af køn (“male” eller “female”) i to forskellige grupper (“Team A” eller “Team B”)
library(ggplot2, quietly = TRUE)
teams <- dget("https://statepi.statnoter.dk/data/barchart.robj")
head(teams)
sex group
1 m Team B
2 f Team B
3 f Team B
4 f Team A
5 m Team A
6 f Team B
Et enkelt søjlediagram laves som vist her, idet vi blot skal angive den parameter vi ønsker at få optalt. I nedenstående eksempel undersøger vi altså bare hvor mange mænd hhv. kvinder der er i alt i vores datasæt.
ggplot(data = teams) +
geom_bar(mapping = aes(x = sex))
Som med de andre plots vi har set på, vil man ofte ønske at lave en
form for opdeling. Man kan jo prøve den umiddelbare løsning, dvs. at
plottet opdeles i forskellige farver. Bemærk at her benyttes
fill i stedet for color. Man kan også benytte
color, men i så fald får man farvet kanten rundt om
søjlerne:
ggplot(data = teams) +
geom_bar(mapping = aes(x = sex, fill = group))
Det giver selvfølgelig en opdeling, og er i nogle situationer faktisk et fint plot. Men måske ville man gerne have søjlerne til at stå ved siden af hinanden. Det kan gøres som vist her:
ggplot(data = teams) +
geom_bar(mapping = aes(x = sex, fill = group), position = "dodge")