A custom plot to emphasize change

Communicating with Data in the Tidyverse

Timo Grossenbacher

Data Journalist

Communicating with Data in the Tidyverse

The dot plot

1 New York Times (https://www.nytimes.com/2017/11/17/upshot/income-inequality-united-states.html){{0}}
Communicating with Data in the Tidyverse

Dot plots with ggplot2

ggplot((ilo_data %>% filter(year == 2006))) +
  geom_dotplot(aes(x = working_hours)) +
  labs(x = "Working hours per week",
       y = "Share of countries")

Communicating with Data in the Tidyverse

The geom_path() function

?geom_path

geom_path() connects the observations in the order in which they appear in the data.

ilo_data %>% 
    arrange(country)
# A tibble: 34 x 4
     country   year hourly_compensation working_hours
       <fct>  <fct>               <dbl>         <dbl>
1    Austria   1996               24.75      31.99808
2    Austria   2006               30.46      31.81731
3    Belgium   1996               25.25      31.65385
4    Belgium   2006               31.85      30.21154
5 Czech Rep.   1996                2.94      39.72692
# ... with 29 more rows
Communicating with Data in the Tidyverse

Dot plots with `ggplot2`: the `geom_path()` function

ggplot() +
    geom_path(aes(x = numeric_variable, y = numeric_variable))
ggplot() +
    geom_path(aes(x = numeric_variable, y = factor_variable))
ggplot() +
    geom_path(aes(x = numeric_variable, y = factor_variable),
                arrow = arrow(___))
Communicating with Data in the Tidyverse

Let's try out geom_path!

Communicating with Data in the Tidyverse

Preparing Video For Download...