Analyze swimming tracking data collected with Aquanote.
├── metrics.py # Reusable analysis functions (load, stats, rankings, plots)
├── aquanote.ipynb # Notebook demonstrating the analysis workflow
├── exemple_annotation_ligne_5_cycles.csv # Example CSV data
├── figures/ # Saved figures
├── requirements.txt
└── README.md
- Descriptive statistics — per-swimmer and per-lap summaries of tempo, frequency, amplitude, and speed
- Rankings — rank swimmers or laps by any metric
- Visualizations — bar charts, box plots, cumulative speed charts, lap comparisons
- Create a virtual environment:
python -m venv venv- Activate the environment:
- macOS/Linux:
source venv/bin/activate - Windows:
venv\Scripts\activate
- Install dependencies:
pip install --upgrade pip
pip install -r requirements.txt- Launch Jupyter:
jupyter notebookThen open aquanote.ipynb.
from metrics import load_csv, enrich_cycles, rank_swimmers, plot_ranking
df = load_csv("exemple_annotation_ligne_5_cycles.csv")
df = enrich_cycles(df)
rank_swimmers(df, "vitesse (m/s)")
plot_ranking(df, "vitesse (m/s)")