Olympic Games Data Visualization

Matthew Rautionmaa
Posted on Feb 18, 2019

This Shiny App is an exploratory visualization of data from 120 years of the Olympic Games. Users can view world maps detailing country medals and host cities as well as select a country and dive into graphs explaining its Olympic history. The data spans from 1896 to 2016 covering the following categories:

Athlete name










Data is missing in 1916, 1940 and 1944 because of World War I and World War II. Data is more sparse in 1980 because the Olympics were boycotted by the USA and other countries. Winter and Summer Olympics were held in the same year until 1994 (Lillehammer, Norway) when they began alternating every two years (as seen in gender graphs).

Data can be found here. All code was written in R and is available on GitHub

Physical Attributes Over Time

This section, labeled "Gender Graphs", displays the change in athlete height, weight, and age by gender over time. As an interactive plotly graph, users can choose which gender to highlight and can scroll their mouse over the trend line or any point to get its data. Furthermore, users can select the country of the athletes from the sidebar. The average (dashed line) height of an Olympic male athlete in 2016 was 180cm versus 170cm for females, increasing by about 8cm each over the last 120 years. Heights and weights fluctuate starting in 1994 because winter athletes are shorter and lighter on average.



The average weights of athletes have slowly increased over time. In 1920 the average male athlete weighed 73kg and the average female athlete weighed 58kg compared to 79kg and 62kg in 2016.


The average age of athletes has fluctuated a bit over time. There are drastic spikes in the 1890s and early 1900s due to scarcity of data. In the 2016 Olympics the average male athlete was 27 and the average female was 26.

World Maps

The first map was created using GoogleVis and displays the medal type and count by each country that has ever won a medal. Users can scroll over a country to display the data. 

Medal Count by County

Host City Map

Users can also view a world map displaying all cities to have hosted the Olympics. It's a fun way to display 120 years of historical cities in one interactive map. An obvious observation is the cluster of cities in Europe as well as North America. London and Paris have each hosted the games three times. 

By Sport

The next section, labeled "Sports Graphs", displays histograms for every single sport by weight, height, and age and by the user selected country in the sidebar. Again, these graphs are interactive plotly graphs where users can double click on a sport to remove all other sports. Users can also scroll over a sport's histogram to display its statistics: median, max, min, and quartiles.  The analysis reveals sport-specific characteristics. The following three graphs look at the USA.


When looking at weight, sports such as wrestling, weightlifting, and basketball all have heavier athletes, while gymnastics and synchronized swimming are the lightest. Athletics has a very wide range of weights with many outliers.


It's no surprise that basketball has the tallest players in the Olympics, with a median height of 193cm. Gymnastics has the shortest athletes, which is expected as they are also the lightest by weight.


Age does not vary much between sports. Boxing and swimming have a tighter range of ages. Archery and art competitions (no longer an olympic sport) have the oldest athletes.

Top Countries and Athletes

The user is also able to choose any Olympic sport and view its top 10 athletes by medals. Additionally, they can view the top 10 athletes by the chosen country. The stacked bar graph shows gold, silver and bronze medals. 

Top Countries by Sport

Top Athlete by Country

About Author

Matthew Rautionmaa

Matthew Rautionmaa

Matthew is an aspiring data scientist with over four years of professional success in leveraging insights from data analysis to generate business impact in the financial services industry. He is experienced in Python, R, Machine Learning, Web Scraping...
View all posts by Matthew Rautionmaa >

Leave a Comment

No comments found.

View Posts by Categories

Our Recent Popular Posts

View Posts by Tags

#python #trainwithnycdsa 2019 airbnb Alex Baransky alumni Alumni Interview Alumni Reviews Alumni Spotlight alumni story Alumnus API Application artist aws beautiful soup Best Bootcamp Best Data Science 2019 Best Data Science Bootcamp Best Data Science Bootcamp 2020 Best Ranked Big Data Book Launch Book-Signing bootcamp Bootcamp Alumni Bootcamp Prep Bundles California Cancer Research capstone Career Career Day citibike clustering Coding Course Demo Course Report D3.js data Data Analyst data science Data Science Academy Data Science Bootcamp Data science jobs Data Science Reviews Data Scientist Data Scientist Jobs data visualization Deep Learning Demo Day Discount dplyr employer networking feature engineering Finance Financial Data Science Flask gbm Get Hired ggplot2 googleVis Hadoop higgs boson Hiring hiring partner events Hiring Partners Industry Experts Instructor Blog Instructor Interview Job Job Placement Jobs Jon Krohn JP Morgan Chase Kaggle Kickstarter lasso regression Lead Data Scienctist Lead Data Scientist leaflet linear regression Logistic Regression machine learning Maps matplotlib Medical Research Meet the team meetup Networking neural network Neural networks New Courses nlp NYC NYC Data Science nyc data science academy NYC Open Data NYCDSA NYCDSA Alumni Online Online Bootcamp Online Training Open Data painter pandas Part-time Portfolio Development prediction Prework Programming PwC python python machine learning python scrapy python web scraping python webscraping Python Workshop R R language R Programming R Shiny r studio R Visualization R Workshop R-bloggers random forest Ranking recommendation recommendation system regression Remote remote data science bootcamp Scrapy scrapy visualization seaborn Selenium sentiment analysis Shiny Shiny Dashboard Spark Special Special Summer Sports statistics streaming Student Interview Student Showcase SVM Switchup Tableau team TensorFlow Testimonial tf-idf Top Data Science Bootcamp twitter visualization web scraping Weekend Course What to expect word cloud word2vec XGBoost yelp