Exploratory Analysis II

Data Visualization - part 2, Code for Quiz 8.

  1. Load the R packages we will use.
  1. Quiz Questions

Question: Modify slide 51

ggplot(data = mpg) +
  geom_point(aes(x = displ, y = hwy))+
  facet_wrap(facets = vars(manufacturer))

Question: Modify facet-ex-2

ggplot(mpg) +
  geom_bar(aes(y = manufacturer)) +
  facet_grid(vars(class), scales = "free_y", space = "free_y")

Questions: spend_time

To help you complete this question use:

spend_time <- read_csv("https://estanny.com/static/week8/spend_time.csv")

Start with spend_time

p1 <- spend_time %>% filter(year == "2011") %>% 
ggplot() + 
  geom_col(aes(x = activity, y = avg_hours, fill = activity)) +
  scale_y_continuous(breaks = seq(0, 6, by = 1)) +
  labs(subtitle = "Avg hours per day: 2011", x = NULL, y = NULL)

Start with spend_time

p2 <- spend_time %>% 
  ggplot() + 
  geom_col(aes(x = year, y = avg_hours, fill = activity)) +
  labs(subtitle = "Avg hours per day: 2010-2019", x = NULL, y = NULL)

Use patchwork to display p1 on top of p2 - assign the output to p_all - display p_all

p_all <-  p1 / p2

Start with p_all - AND set legend.position to ‘none’ to get rid of the legend - assign the output to p_all_no_legend - display p_all_no_legend

p_all_no_legend <- p_all & theme(legend.position = 'none')

Start with p_all_no_legend - see how annotate the composition here: https://patchwork.data-imaginist.com/reference/plot_annotation.html - ADD plot_annotation set - title to “How much time Americans spent on selected activities” - caption to “Source: American Time of Use Survey, https://data.bls.gov/cgi-bin/surveymost?tu

p_all_no_legend +
  plot_annotation(title = "How much time Americans spent on selected activities", caption = "Source: American Time of Use Survey, https://data.bls.gov/cgi-bin/surveymost?tu")

Use spend_time from last question patchwork slides

Start with spend_time - extract observations for food prep - THEN create a plot with that data - ADD points with geom_point - assign year to the x-axis - assign avg_hours to the y-axis ADD line with geom_smooth - assign year to the x-axis - assign avg_hours to the y-axis ADD breaks on for every year on x axis with with scale_x_continuous ADD labs to - set subtitle to Avg hours per day: food prep - set x and y to NULL so x and y axes won’t be labeled - assign the output to p4 - display p4

p4  <- 
spend_time %>% filter(activity == "food prep")  %>% 
ggplot() + 
  geom_point(aes(x = year, y = avg_hours)) +
  geom_smooth(aes(x = year, y = avg_hours)) +
  scale_x_continuous(breaks = seq(2010, 2019, by = 1)) +
  labs(subtitle = "Avg hours per day: food prep", x = NULL, y = NULL)

Start with p4 - ADD coord_cartesian to change range on y axis to 0 to 6 - assign the output to p5 - display p5

p5 <-  p4 + coord_cartesian(ylim = c(0, 6))

Start with spend_time

p6   <- 
 spend_time  %>% 
ggplot() + 
  geom_point(aes(x = year, y = avg_hours, color = activity, group = activity)) +
  geom_smooth(aes(x = year, y = avg_hours, color = activity, group = activity)) +
  scale_x_continuous(breaks = seq(2010, 2019, by = 1)) +
  coord_cartesian(ylim = c(0, 6)) + 
  labs(x = NULL, y = NULL)

Use patchwork to display p4 and p5 on top of p6

(p4 | p5) / p6

Save file and plot.

ggsave(filename = "preview.png", 
       path = here::here("_posts", "2022-03-08-exploratory-analysis-ii"))