library(tidyverse)
nations <- read_csv("nations.csv")Nation Dataset Charts
nationsData <- nations |>
mutate(
data = (gdp_percap * population) / 1e12
)
head(nationsData)# A tibble: 6 × 11
iso2c iso3c country year gdp_percap population birth_rate neonat_mortal_rate
<chr> <chr> <chr> <dbl> <dbl> <dbl> <dbl> <dbl>
1 AD AND Andorra 1996 NA 64291 10.9 2.8
2 AD AND Andorra 1994 NA 62707 10.9 3.2
3 AD AND Andorra 2003 NA 74783 10.3 2
4 AD AND Andorra 1990 NA 54511 11.9 4.3
5 AD AND Andorra 2009 NA 85474 9.9 1.7
6 AD AND Andorra 2011 NA 82326 NA 1.6
# ℹ 3 more variables: region <chr>, income <chr>, data <dbl>
chart1Data <- nationsData |>
filter(
country %in% c("China", "India", "United States", "Germany")
)
chart1 <- chart1Data |>
ggplot(aes(x = year, y = data, color = country)) +
geom_point() +
geom_line() +
scale_color_brewer(palette = "Set1") +
labs(title = "Total GDP in Trillions for Selected Nations",x = "Year",y = "GDP (Trillions USD)",color = "Country"
) +
theme_minimal()
chart1chart2Data <- nationsData |>
group_by(region, year) |>
summarise(
GDP = sum(data, na.rm = TRUE), .groups = 'drop'
)
head(chart2Data)# A tibble: 6 × 3
region year GDP
<chr> <dbl> <dbl>
1 East Asia & Pacific 1990 5.52
2 East Asia & Pacific 1991 6.03
3 East Asia & Pacific 1992 6.50
4 East Asia & Pacific 1993 7.04
5 East Asia & Pacific 1994 7.64
6 East Asia & Pacific 1995 8.29
chart2 <- chart2Data |>
ggplot(aes(x = year, y = GDP, fill = region)) +
geom_area(color = "white", size = 0.1) +
scale_fill_brewer(palette = "Set2") +
labs(title = "Total Regional GDP in Trillions",x = "Year",y = "Total GDP (Trillions USD)",fill = "Region"
) +
theme_minimal()Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0.
ℹ Please use `linewidth` instead.
chart2