library(tidyverse)
## -- Attaching packages ------------------------------------------- tidyverse 1.2.1 --
## v ggplot2 3.2.1     v purrr   0.3.2
## v tibble  2.1.3     v dplyr   0.8.3
## v tidyr   0.8.3     v stringr 1.4.0
## v readr   1.3.1     v forcats 0.4.0
## Warning: package 'ggplot2' was built under R version 3.6.2
## Warning: package 'stringr' was built under R version 3.6.3
## -- Conflicts ---------------------------------------------- tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()
nations <- read_csv("nations.csv")
## Parsed with column specification:
## cols(
##   iso2c = col_character(),
##   iso3c = col_character(),
##   country = col_character(),
##   year = col_double(),
##   gdp_percap = col_double(),
##   population = col_double(),
##   birth_rate = col_double(),
##   neonat_mortal_rate = col_double(),
##   region = col_character(),
##   income = col_character()
## )

Plot 1 - GDP by Year

gdp_nations <- nations %>%
  filter(country %in% c("China","Germany","Japan","United States")) %>%
  mutate(gdp = (gdp_percap * population / 1000000000000))

gdp_plot <- gdp_nations %>%
  ggplot(aes(x=year,y=gdp,color=country)) +
  geom_line() +
  geom_point() +
  scale_color_brewer(palette="Set1") +
  labs(title="China's Rise to Become the Largest Economy",y="GDP ($trillions)",x="Year")
gdp_plot

Plot 2 - GDP by World Bank Region

wbr <- nations %>%
  mutate(gdp = (gdp_percap * population / 1000000000000)) %>%
  group_by(region,year) %>%
  summarize(sum=sum(gdp,na.rm=T))

wbr_plot <- wbr %>%
  ggplot(aes(x=year,y=sum,fill=region)) +
  geom_area(color="white") +
  scale_fill_brewer(palette = "Set2") +
  labs(title="GDP by World Bank Region",x="Year",y="GDP ($ trillions)")
wbr_plot