Puntdiagrammen

Best practices voor visualisaties in R

Nick Strayer

Instructor

Wanneer een staafdiagram niet ideaal is

  • Geen hoeveelheid
  • Niet-lineaire transformaties

Best practices voor visualisaties in R

Puntdiagrammen

  • Vervang de staaf simpelweg door een punt
  • Ook wel puntdiagram of dot plot genoemd

Best practices voor visualisaties in R

Voordelen van puntdiagrammen

  • Hoge precisie
  • Efficiënte weergave
  • Eenvoudig

Best practices voor visualisaties in R

Data voor de les

  • Werken met een subset van WHO-gegevens
  • Landen zijn een 'interessante' subset — kijken waarom
interestingCountries <- c("NGA", "SDN", "FRA", "NPL", "MYS", "TZA", "YEM", "UKR", "BGD", "VNM")

who_subset <- who_disease %>%
  filter(
    countryCode %in% interestingCountries,
    disease == 'measles',
    year %in% c(2006, 2016)) %>% 
  mutate(year = paste0('cases_', year)) %>% 
  arrange(year, region) %>%
  pivot_wider(names_from = year, values_from = cases)
Best practices voor visualisaties in R

who_subset

who_subset
# A tibble: 10 x 6
   region countryCode country     disease cases_2006 cases_2016
   <chr>  <chr>       <chr>       <chr>        <dbl>      <dbl>
 1 AFR    NGA         Nigeria     measles        704      17136
 2 AFR    TZA         Tanzania    measles       2362         33
 3 EMR    SDN         Sudan (the) measles        228       1767
 4 EMR    YEM         Yemen       measles       8079        143
 5 EUR    FRA         France      measles         40         79
 6 EUR    UKR         Ukraine     measles      42724        102
 7 SEAR   BGD         Bangladesh  measles       6192        972
 8 SEAR   NPL         Nepal       measles       2838       1269
 9 WPR    MYS         Malaysia    measles        564       1569
10 WPR    VNM         Viet Nam    measles       1978         46
Best practices voor visualisaties in R

Code voor puntdiagrammen

  • geom_point() met één categorische en één numerieke as
who_subset %>% 
  # We log-transformeren de waarden, dus staven passen niet
  ggplot(aes(y = country, x = log10(cases_2016))) +
  # Eenvoudige geom_point()
  geom_point()
Best practices voor visualisaties in R

Best practices voor visualisaties in R

Je puntdiagrammen ordenen

  • Ordening helpt de leesbaarheid enorm
  • Gebruik de functie reorder() in de aesthetische mapping
who_subset %>% 
  # bereken de log fold change tussen 2016 en 2006
  mutate(logFoldChange = log2(cases_2016/cases_2006)) %>% 
  ggplot(aes(x = logFoldChange, y = reorder(country, logFoldChange))) +
  geom_point()
Best practices voor visualisaties in R

Best practices voor visualisaties in R

Laten we oefenen!

Best practices voor visualisaties in R

Preparing Video For Download...