Code for Quiz 9.
Create a bar chart that shows the average hours Americans spend on five activities by year. Use the timeline
argument to create an animation that will animate through the years.
spend_time <- read_csv("https://estanny.com/static/week8/spend_time.csv")
spend_time
year
activity
to the x-axis and will show activity by year
(the variable that you grouped the data on)e_timeline_opts
to set autoPlay to TRUEe_bar
to represent the variable avg_hours
with a bar charte_title
to set the main title to ‘Average hours Americans spend per day on each activity’e_legend
Create a line chart for the activities that American spend time on.
Start with spend_time
THEN use mutate
to convert year
from an number to a string (year-month-day) using mutate
first convert year
to a string “201X-12-31” using the function paste
Paste will paste each year to 12 and 31 (separated by -)
THEN use mutate
to convert year from a character object to a date object using the ymd
function from the lubridate package (part of the tidyverse, but not automatically loaded). ymd
converts dates stored as characters to date objects.
THEN group_by
the variable activity
(to get a line for each activity)
THEN initiate an e_charts
object with year
on the x-axis
THEN use e_line
to add a line to the variable avg_hours
THEN add a tooltip with e_tooltip
THEN use e_title
to set the main title to ‘Average hours Americans spend per day on each activity’
THEN use e_legend(top = 40)
to move the legend down (from the top)
Create a plot with the spend_time
data
year
to the x-axisavg_hours
to the y-axisactivity
to colorgeom_point
geom_mark_ellipse
ggplot(spend_time, aes(x = year, y = avg_hours, color = activity)) +
geom_point() +
geom_mark_ellipse(aes(filter = activity == 'leisure/sports', description = 'Americans spend on average more time each day on leisure/sports than the other activities'))
Modify the tidyquant example in the video
Retrieve stock price for Facebook, ticker: FB, using tq_get
from 2019-08-01 to 2020-07-28
assign output to df
df <- tq_get("FB", get = "stock.prices",
from = "2019-08-01", to = "2020-07-28")
Create a plot with the df data
assign date
to the x-axis
assign close
to the y-axis
ADD a line with with geom_line
ADD geom_mark_ellipse
filter on a date to mark. Pick a date after looking at the line plot. Include the date in your Rmd code chunk. include a description of something that happened on that date from the pandemic timeline.
Include the description in your Rmd code chunk fill the ellipse yellow
ADD geom_mark_ellipse
filter on the date that had the minimum close price. Include the date in your Rmd code chunk.
include a description of something that happened on that date from the pandemic timeline. Include the description in your Rmd code chunk color the ellipse red
ADD labs
set the title to Facebook
set x to NULL
set y to “Closing price per share”
set caption to “Source: https://en.wikipedia.org/wiki/Timeline_of_the_COVID-19_pandemic_in_the_United_States”
ggplot(df, aes(x = date, y = close)) +
geom_line() +
geom_mark_ellipse(aes(
filter = date == "2019-12-31",
description = "The first recorded U.S. case of the new virus is reported"
), fill = "yellow",) +
geom_mark_ellipse(aes(
filter = date == "2020-06-30",
description = "U.S. has 126,140 total deaths, 2.59 million confirmed cases, and 30 million tests completed."
), color = "red", ) +
labs(
title = "Facebook",
x = NULL,
y = "Closing price per share",
caption = "Source: https://en.wikipedia.org/wiki/Timeline_of_the_COVID-19_pandemic_in_the_United_States")
Save the previous plot to preview.png and add to the yaml chunk at the top
```