Indledning

I det følgende vises en række eksempler på figurer, der kan laves i R.

Figurerne er tilpasset Forbrugerrådet Tænks designguide i forhold til farver og skrifttyper.

Liggende søjlediagram

Liggende søjlediagrammer er et godt valg for spørgsmål med mange svarmuligheder:

# Indlæsning af Raleway skrifttype:

library(showtext)

font_add(family="Raleway", regular="RALEWAY-BLACK.ttf") # Kontroller at fonten hedder det samme på din PC!
showtext_auto()

#font_add(family="Comic Sans", regular="COMIC.ttf") # Test

z1 <- ggplot(df, aes(x = reorder(Q_7, desc(Q_7)), # Sorterer i faldende rækkefølge
                     y = prop.table(after_stat(count)), # Indsætter procenter
                     label = scales::percent(prop.table(stat(count)), accuracy = 1))) + # Definerer procent-format, accuracy definerer evt. decimaler
  geom_bar(aes(weight=WEIGHTS.TRIM), color="green", fill=rgb(87,219,124, maxColorValue = 255), width=0.5) + # Definerer farverne. Her FBR designfarver for grøn
  coord_flip(ylim=c(0,0.3)) + # Øvre grænse er sat til 0.5, da det svarer til 50 pct.
  labs(x="Bank", y="Procent", title = "Spm.7: I hvilken bank har du dit primære betalingskort?", subtitle = "Vægtet") # Tilføjer akselabels og en diagrantitel

# Konverterer x-aksen til procenter
z2 <- z1 + geom_text(aes(weight=WEIGHTS.TRIM), stat = 'count', position = position_dodge(.9), vjust = 0.2, hjust = -0.2, size = 4) + # Justerer placeringen af procenter
  theme(text = element_text(family = "Raleway"),                   # Ændrer skrifttype til Raleway
        axis.title.x = element_text(colour = "Black", size=12),    # Skriftstørrelse for x-akse titel
        axis.title.y = element_text(colour = "Black", size=12),    # Skriftstørrelse for y-akse titel
        axis.text.x = element_text(colour = "Black", size=12),     # Skriftstørrelse for x-akse
        axis.text.y = element_text(colour = "Black", size=12),     # Skriftstørrelse for y-akse
        panel.background = element_rect(fill="white",              # Ændrer baggrundsfarve til hvid
                                        colour ="Black",     
                                        size=0.5, 
                                        linetype="solid")) +
        scale_y_continuous(labels = scales::percent_format(scale = 100)) # Sætter X-aksen til procenter. Scale=100 er sat som standard.
z2

Liggende søjlediagram opdelt på baggrundsspørgsmål

Hvis man ønsker at analysere forskelle mellem målgrupper, fx. indbyggere i de forskellige regioner, kan man vise samme søjlediagram opdelt på regioner:

# Region:
ggplot(df, aes(x= reorder(Q_7, desc(Q_7)),  group=Region)) + 
  geom_bar(aes(weight=WEIGHTS.TRIM, y = ..prop..), fill=rgb(87,219,124, maxColorValue = 255), stat="count") +
  geom_text(aes(weight=WEIGHTS.TRIM,label = scales::percent(..prop.., accuracy=1),
                y= ..prop.. ), stat= "count", hjust=-.2) +
  coord_flip(ylim=c(0,0.4)) +
  labs(x="Bank", y="Procent", title = "Spm.7: I hvilken bank har du dit primære betalingskort?", 
       subtitle = "Opdelt på regioner - Vægtet (WEIGHTS.TRIM)") +
  theme(text = element_text(family = "Raleway"), panel.background = element_rect(fill="white",           
                                                                                 colour ="Black",     
                                                                                 size=0.5, 
                                                                                 linetype="solid")) +
  facet_grid(~Region) +
  scale_y_continuous(labels = scales::percent)