Olympic Games Data Visualization
A comprehensive dashboard tracking Olympic medal performance from Athens 1896 to Paris 2024
Project information
- Category: Dashboard Design
- Tech Stack: BigQuery, SQL, Looker Studio
- Project URL: Dashboard link
- Completion Date: August 2024
- LOD: Beginner
- Data Source: Kaggle Olympic Dataset
Project Overview
This comprehensive Olympic Games dashboard visualizes medal tallies and performance metrics from the 1896 Athens Games to the 2024 Paris Olympics. Using Google BigQuery for data processing and Looker Studio for visualization, this project offers interactive insights into Olympic history spanning over 128 years.
The dashboard allows users to explore medal counts by country, sport, and Olympic Games, with interactive filters to customize the view. It provides both historical trends and detailed breakdowns of Olympic performance.
Key Features
- Historical medal tracking across 128+ years of Olympic history
- Country performance comparisons with interactive filters
- Sport-specific analysis showing medal distribution
- Athlete performance metrics and record tracking
- Interactive time-series visualization of medal counts
- Geographical distribution of Olympic success
- Comparison tools for analyzing country performance
Technical Implementation
Data was extracted from public Olympic datasets, transformed using SQL in BigQuery to create optimized data models, and visualized through custom Looker Studio dashboards with interactive elements.
The project involved:
- Data cleaning and normalization in BigQuery
- Complex SQL queries for aggregating medal counts
- Custom calculated fields for performance metrics
- Interactive dashboard design with filters and parameters
- Responsive layout for mobile and desktop viewing
Sample SQL Query
SELECT
player_id,
Name,
Sex,
Team,
NOC,
Year,
Season,
City,
Sport,
Event,
Medal,
CONCAT(Sport, '', Event) AS sport_event,
REGEXP_REPLACE(Team, r'-\d+$', '') AS cleaned_country_name,
CASE
WHEN Sex = 'M' THEN TRUE
ELSE FALSE
END AS male_only,
CASE
WHEN Sex = 'F' THEN TRUE
ELSE FALSE
END AS female_only
FROM
`portfolio.olympics.medals`;