Skip to main content

Formula 1 Race Replay and Visualization Library

Project description

f1-replay

PyPI version Python 3.9+ License: MIT

A Python toolkit for Formula 1 data analysis and visualization. Built on FastF1 with intelligent caching, circuit plotting, and interactive race replay.

Installation

pip install f1-replay

Quick Start

Race Replay

Watch any historic race with an interactive 2D viewer:

from f1_replay import Manager

mgr = Manager()
mgr.race(2024, "monaco")

Or from the command line:

f1-replay 2024 monaco

The viewer includes animated car positions, live standings with gap times, strategy panel, track status overlays (safety car, VSC, red flags), rain effects, race control messages, and more.

Circuit Plotting

Generate poster-style circuit maps:

mgr = Manager()
weekend = mgr.load_weekend(2024, "monaco")

weekend.plot()                        # Clean white track
weekend.plot(color_mode="speed")      # Colored by speed
weekend.plot(color_mode="sectors")    # Marshal sectors
weekend.plot(save_path="monaco.png")  # Save to file

Color modes: white, sectors, speed, throttle, brake, height

CLI

f1-replay 2024 monaco                  # Race replay (shorthand)
f1-replay 2024 8                       # By round number
f1-replay race 2024 monaco -p 9000     # Custom port
f1-replay seasons 2024                 # List races
f1-replay config --set-cache-dir /data # Set cache location

Documentation

Full documentation at f1-replay.readthedocs.io

Development

git clone https://github.com/kkollsga/f1-replay.git && cd f1-replay
make install   # pip install -e ".[dev,all]"
make check     # lint + tests (196 tests)
make docs      # build Sphinx documentation

See CONTRIBUTING.md for the full development guide.

Requirements

  • Python 3.9+
  • FastF1, Flask, Polars, NumPy, SciPy, Pandas
  • Optional: matplotlib (circuit plots), orjson (faster JSON), flask-cors

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

f1_replay-0.1.16.tar.gz (124.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

f1_replay-0.1.16-py3-none-any.whl (120.5 kB view details)

Uploaded Python 3

File details

Details for the file f1_replay-0.1.16.tar.gz.

File metadata

  • Download URL: f1_replay-0.1.16.tar.gz
  • Upload date:
  • Size: 124.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for f1_replay-0.1.16.tar.gz
Algorithm Hash digest
SHA256 2f0be295a086a5c1898ccdddb376bb260e87178ed70b2f8003618c0700af2f8b
MD5 4b4d8cd5d64f4b5d8fe11656daff3f6c
BLAKE2b-256 d5af05511136dd215e22e8448d669294fe06995a014142ce11f47bb00c63b083

See more details on using hashes here.

File details

Details for the file f1_replay-0.1.16-py3-none-any.whl.

File metadata

  • Download URL: f1_replay-0.1.16-py3-none-any.whl
  • Upload date:
  • Size: 120.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for f1_replay-0.1.16-py3-none-any.whl
Algorithm Hash digest
SHA256 e8be14208f8bcca5ebecc6feec81f7576646782896f25dd7a9756a36c2aba174
MD5 a1fca3ba6991305965f182c9b6e5de7d
BLAKE2b-256 d12ee12e6ab926a2df403d167161de1862003d7f9652945c548b6726ae7729da

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page