This is a continuation from the previous visualisation that I had done on 120 years of Olympic history. This time round, we examine the 2 boycotts that we have identified in previous assignment 5, for 1936 Nazi Olympics and 1980s Olympics held by the Soviet Union.
Maps will be plotted to show the number of athletes that each country sent to the respective Olympic games. A comparison will also be made to the last Olympic Games held in Brazio, Rio De Janeiro in 2016.
country <- read_csv("noc_regions.csv",
col_types = cols(
NOC = col_character(),
region = col_character()
))
athletes = read_csv("athlete_events.csv",
col_types = cols(
ID = col_character(),
Name = col_character(),
Sex = col_factor(levels = c("M","F")),
Age = col_integer(),
Height = col_double(),
Weight = col_double(),
Team = col_character(),
NOC = col_character(),
Games = col_character(),
Year = col_integer(),
Season = col_factor(levels = c("Summer","Winter")),
City = col_character(),
Sport = col_character(),
Event = col_character(),
Medal = col_factor(levels = c("Gold","Silver","Bronze"))
)
)
sports = athletes %>% filter(Sport != "Art Competitions") #remove Art Competitions from the dataset as we are only interested in sports eventsJoin sports file with country file using NOC as the common identifier.
Filter out data for each of the games that we are interested in exploring individually. i.e. 1936 summer games in Berlin, 1980 summer games held in the then Soviet Union and 2016 summer games held in Brazil.
berlin <- sports_regions %>%
filter(Games == "1936 Summer") %>%
group_by(region) %>%
summarize(Berlin = length(unique(ID)))## `summarise()` ungrouping output (override with `.groups` argument)
soviet <- sports_regions %>%
filter(Games == "1980 Summer") %>%
group_by(region) %>%
summarize(Soviet = length(unique(ID)))## `summarise()` ungrouping output (override with `.groups` argument)
rio <- sports_regions %>%
filter(Games == "2016 Summer") %>%
group_by(region) %>%
summarize(Rio = length(unique(ID)))## `summarise()` ungrouping output (override with `.groups` argument)
world <- map_data("world")
mapdat <- tibble(region=unique(world$region))
mapdat <- mapdat %>%
left_join(berlin, by="region") %>%
left_join(soviet, by="region") %>%
left_join(rio, by="region")
mapdat$Berlin[is.na(mapdat$Berlin)] <- 0
mapdat$Soviet[is.na(mapdat$Soviet)] <- 0
mapdat$Rio[is.na(mapdat$Rio)] <- 0
world <- left_join(world, mapdat, by="region")The 1936 is also dubbed as the Nazi Olympics.
From the visusalisation below, we are able to see that USA sent the most number of athletes to the Berlin Games besides Germany while there are no participation from Soviet Union and a lot of countries in the Africa continent. There are also very few participation from Australia and North America.
In Asia, we can observe small number of participants from China and Japan.
From this perspective, it seemed that USA and USSR adopted different foreign policy strategies and reaction to Germany at that point in time.
ggplot(world, aes(x = long, y = lat, group = group)) +
geom_polygon(aes(fill = Berlin)) +
labs(title = "Berlin 1936",
x = NULL, y=NULL) +
theme(axis.ticks = element_blank(),
axis.text = element_blank(),
panel.background = element_rect(fill = "white"),
plot.title = element_text(hjust = 0.5)) +
guides(fill=guide_colourbar(title="Athletes")) +
scale_fill_gradient(low="light blue",high="red")Majority of participation is from Soviet Union since they are the host country.
There are no participation in North America Continent (USA and CANADA did not participate in the games at all), and no participation from China.
Some participation is observed in Europe and Africa and there is higher participation from Australia compared to 1936.
It is interesting to note that Germany participated in the Games despite the opposing stance back in 1936.
ggplot(world, aes(x = long, y = lat, group = group)) +
geom_polygon(aes(fill = Soviet)) +
labs(title = "Soviet 1980",
x = NULL, y=NULL) +
theme(axis.ticks = element_blank(),
axis.text = element_blank(),
panel.background = element_rect(fill = "white"),
plot.title = element_text(hjust = 0.5)) +
guides(fill=guide_colourbar(title="Athletes")) +
scale_fill_gradient(low="light blue",high="red")This is the latest modern Olympic Games that took place before Covid 19 hits the world.
From this map, we see a good representation of country participation across all continents.
USA still sends the most number of athletes, followed by Brazil (host country), China, Australia and European countries.
ggplot(world, aes(x = long, y = lat, group = group)) +
geom_polygon(aes(fill = Rio)) +
labs(title = "Rio De Janeiro 2016",
x = NULL, y=NULL) +
theme(axis.ticks = element_blank(),
axis.text = element_blank(),
panel.background = element_rect(fill = "white"),
plot.title = element_text(hjust = 0.5)) +
guides(fill=guide_colourbar(title="Athletes")) +
scale_fill_gradient(low="light blue",high="red")