A full-stack Formula 1 data analysis dashboard built using Python, Streamlit, and FastF1. This application provides insights into race performance, tire degradation, driver comparison, telemetry, and championship standings.
- Visualize lap times across different tire compounds
- Identify performance trends over laps
- Compare lap times between two drivers
- View average lap performance metrics
- Driver standings
- Constructor standings
- Podium highlighting
- API fallback system for improved reliability
- Speed vs distance comparison
- Zoom and hover for detailed analysis
- Compare fastest laps between drivers
- Built using Plotly for interactivity
- Frontend: Streamlit
- Data Source: FastF1
- Visualization: Matplotlib, Plotly
- API: Jolpica (Ergast-compatible)
- Language: Python
Streamlit/
│
├── app.py # Main Streamlit application
├── standings.py # Standings module (API handling)
├── api.py # Optional FastAPI backend
├── requirements.txt
└── README.md
git clone https://github.com/your-username/f1-analytics-dashboard.git
cd f1-analytics-dashboard
pip install -r requirements.txt
streamlit run app.py
-
Select a year
-
Choose a Grand Prix
-
Select a session
-
Choose a mode:
- Single Driver
- Comparison
- Standings
- Telemetry
- Some sessions may not contain complete data
- Older seasons may have limited availability
- Telemetry requires valid lap data
- Throttle and brake telemetry
- Delta time comparison
- Track map visualization
- Deployment (Streamlit Cloud / API hosting)
This project is intended for educational and portfolio purposes.
Samartha Bhat https://github.com/Samarthasbhat