Skip to content

AaronTide/WinAnalyst

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 

Repository files navigation

WinAnalyst: Post-Race Profile Deep Dive

πŸ† Project Overview

WinAnalyst is a data-driven dashboard application developed using Python and Dash designed for competitive analysis in motorsport. It moves beyond simple timing sheets to provide a detailed, quantitative comparison of any driver's performance profile against the Race Winner's established "Optimal Profile" or Winning DNA.

The tool is built to empower drivers and race engineers by translating raw telemetry data (sector times, lap averages, consistency metrics) into actionable, prioritized insights to close performance gaps.

✨ Features

Winning DNA Quantification: Calculates and displays the benchmark performance vector (Average Best 10 Pace, Sector Averages, Lap Consistency $\text{Std Dev}$) established by the race winner.

Real-Time Comparative Analysis: Uses dynamic callbacks to instantly visualize the selected driver's profile against the winner's across a multi-axis Radar Chart .

Actionable Insights Engine: Automatically identifies key areas of time loss or gain, providing specific, color-coded recommendations (e.g., "Major time loss in Sector 2," or "Consistency Risk identified").

F1-Inspired UI/UX: Features a sleek, high-contrast dark theme optimized for clarity and professional review.

βš™οΈ Installation and Setup for Judges

To run the WinAnalyst dashboard locally, please follow these steps.

Prerequisites

Ensure you have Python 3.8+ installed on your system.

Step 1: Clone the Repository

Clone this repository to your local machine using git:

git clone https://github.com/AaronTide/WinAnalyst cd toyota-dashboard

Step 2: Install Dependencies

pip install pandas plotly dash

The core dependencies include:

pandas for data manipulation

dash and dash-core-components for the web application and layout

plotly for advanced data visualization

Step 3: Data Structure

The application requires specific CSV files in a data/ subdirectory. These files contain the mock telemetry data used for the analysis.

File Name

Description

Required Metrics

sections.csv

Raw sector times and lap data for all drivers.

S1, S2, S3 times, Driver ID

best10.csv

Calculated average time for each driver's best 10 consecutive laps (Pace metric).

Average Time, Driver ID

provisional_results.csv

Final race standings (Used for Driver List).

Total Time, Driver ID

Note: The provided repository includes these necessary data files for immediate demonstration.

Step 4: Run the Application

Execute the main Python script (app.py) to launch the Dash server:

python app.py

Step 5: View the Dashboard

Once the script is running, the application will be accessible in your web browser. Open the following address:

http://127.0.0.1:8050/

Press Ctrl+C in the terminal to stop the server when finished.

πŸ“‚ Project Structure

WinAnalyst/ β”œβ”€β”€ data/ β”‚ β”œβ”€β”€ best10.csv β”‚ β”œβ”€β”€ provisional_results.csv β”‚ └── sections.csv | └── lap_times.csv β”œβ”€β”€ app.py # The main Dash application logic and dashboard layout └── requirements.txt # List of required Python packages

πŸ› οΈ Built With

Python - Programming Language

Dash - Web Application Framework for Python

Plotly - Visualization Library

Pandas - Data Analysis and Manipulation

About

Analyse key performance metrics for motorsport analysis ||Built For Toyota Hack The Track Competition

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages