{ "cells": [ { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "# WRC Overall\n", "\n", "Generate a graphic enriched tabel summarising rally evolution over multiple stages, rebased to a specific driver." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "importing Jupyter notebook from Charts - Stage Results.ipynb\n" ] } ], "source": [ "if __name__=='__main__':\n", " %load_ext autoreload\n", " %autoreload 2\n", " \n", " import notebookimport\n", " \n", " sr = __import__(\"Charts - Stage Results\")\n" ] }, { "cell_type": "code", "execution_count": 164, "metadata": {}, "outputs": [], "source": [ "# TO DO\n", "# do a step line chart for relative / rebased positions ahead / behind" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "\n", "from IPython.display import HTML\n", "\n", "import dakar_utils as dakar\n", "from dakar_utils import moveColumn, sparkline2, sparklineStep, moreStyleDriverSplitReportBaseDataframe\n" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "import sqlite3\n", "db2024='wrc_2024_archive_results.db'\n", "dbname2='mexico19.db'\n", "conn2 = sqlite3.connect(dbname2)\n", "\n", "c2 = conn2.cursor()\n", "\n", "conn3= sqlite3.connect(db2024)\n", "c3 = conn3.cursor()" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "from IPython.display import HTML" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "def _rebaseTimes(times, bib=None):\n", " if bib is None: return times\n", " return times - times.loc[bib]" ] }, { "cell_type": "code", "execution_count": 169, "metadata": {}, "outputs": [], "source": [ "REBASER=306" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
| \n", " | order | \n", "startDateTimeLocal | \n", "carNo | \n", "driverCountry | \n", "driverCountryImage | \n", "driver | \n", "coDriverId | \n", "coDriverCountry | \n", "coDriverCountryImage | \n", "coDriver | \n", "teamId | \n", "team/car | \n", "teamName | \n", "teamLogo | \n", "eligibility | \n", "groupClass | \n", "priority | \n", "id | \n", "date | \n", "
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| driverId | \n", "\n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " |
| ae7329c9-79b3-5d96-886c-22cca6217764 | \n", "1 | \n", "\n", " | #33 | \n", "United Kingdom of Great Britain and Northern I... | \n", "Flags/GBR.png | \n", "Elfyn EVANS | \n", "53e56691-fe7c-5271-9dc5-8960df28b221 | \n", "United Kingdom of Great Britain and Northern I... | \n", "Flags/GBR.png | \n", "Scott MARTIN | \n", "be461a0c-d1fd-5052-a69c-3fd94f8cf5f6 | \n", "GR Yaris Rally1 HYBRID | \n", "Toyota | \n", "teamLogo/toyota.png | \n", "M | \n", "RC1 | \n", "P1 | \n", "24c25e9d-7635-54c5-bc16-7fcf4bc7d60c | \n", "None | \n", "
| c99a2a26-bd03-5153-aaa7-684d3acb5491 | \n", "2 | \n", "\n", " | #11 | \n", "Belgium | \n", "Flags/BEL.png | \n", "Thierry NEUVILLE | \n", "b1b98699-0332-528a-8a80-11eb538f1ded | \n", "Belgium | \n", "Flags/BEL.png | \n", "Martijn WYDAEGHE | \n", "b6692ea5-df92-5cad-a91c-20319a6fffd7 | \n", "i20 N Rally1 HYBRID | \n", "Hyundai | \n", "teamLogo/hyundai.png | \n", "M | \n", "RC1 | \n", "P1 | \n", "24c25e9d-7635-54c5-bc16-7fcf4bc7d60c | \n", "None | \n", "
| 6632e7ca-34bf-55b8-9cad-d060000fa794 | \n", "3 | \n", "\n", " | #8 | \n", "Estonia | \n", "Flags/EST.png | \n", "Ott TÄNAK | \n", "00a8a5c3-f7ba-5086-86df-1a59b7da7e26 | \n", "Estonia | \n", "Flags/EST.png | \n", "Martin JÄRVEOJA | \n", "b6692ea5-df92-5cad-a91c-20319a6fffd7 | \n", "i20 N Rally1 HYBRID | \n", "Hyundai | \n", "teamLogo/hyundai.png | \n", "M | \n", "RC1 | \n", "P1 | \n", "24c25e9d-7635-54c5-bc16-7fcf4bc7d60c | \n", "None | \n", "
| 1cf9ade6-25b5-5586-8393-eacfeb943eae | \n", "4 | \n", "\n", " | #17 | \n", "France | \n", "Flags/FRA.png | \n", "Sébastien OGIER | \n", "867cd58f-3fe3-5290-9cc5-b21cb41c523c | \n", "France | \n", "Flags/FRA.png | \n", "Vincent LANDAIS | \n", "be461a0c-d1fd-5052-a69c-3fd94f8cf5f6 | \n", "GR Yaris Rally1 HYBRID | \n", "Toyota | \n", "teamLogo/toyota.png | \n", "M | \n", "RC1 | \n", "P1 | \n", "24c25e9d-7635-54c5-bc16-7fcf4bc7d60c | \n", "None | \n", "
| 298f93b1-b0ef-5af4-9f0c-e468d29abfd2 | \n", "5 | \n", "\n", " | #18 | \n", "Japan | \n", "Flags/JPN.png | \n", "Takamoto KATSUTA | \n", "6347a621-eade-5fff-a7b4-7c4b73651e8a | \n", "Ireland | \n", "Flags/IRL.png | \n", "Aaron JOHNSTON | \n", "be461a0c-d1fd-5052-a69c-3fd94f8cf5f6 | \n", "GR Yaris Rally1 HYBRID | \n", "Toyota | \n", "teamLogo/toyota.png | \n", "M | \n", "RC1 | \n", "P1 | \n", "24c25e9d-7635-54c5-bc16-7fcf4bc7d60c | \n", "None | \n", "
| \n", " | date | \n", "code | \n", "section | \n", "order | \n", "index | \n", "
|---|---|---|---|---|---|
| 1 | \n", "Friday 8th March | \n", "SS2 | \n", "Section 2 | \n", "2 | \n", "2 | \n", "
| 2 | \n", "Friday 8th March | \n", "SS3 | \n", "Section 2 | \n", "2 | \n", "2 | \n", "
| 3 | \n", "Friday 8th March | \n", "SS4 | \n", "Section 2 | \n", "2 | \n", "2 | \n", "
| \n", " | date | \n", "code | \n", "section | \n", "order | \n", "index | \n", "
|---|---|---|---|---|---|
| 1 | \n", "Friday 8th March | \n", "SS2 | \n", "Section 2 | \n", "2 | \n", "2 | \n", "
| 2 | \n", "Friday 8th March | \n", "SS3 | \n", "Section 2 | \n", "2 | \n", "2 | \n", "
| 3 | \n", "Friday 8th March | \n", "SS4 | \n", "Section 2 | \n", "2 | \n", "2 | \n", "
| \n", " | overallPosition | \n", "overallGapToLeader | \n", "Pos | \n", "SS_1_overall | \n", "Gap | \n", "stagePosition | \n", "stageWinnerGap | \n", "SS_1 | \n", "
|---|---|---|---|---|---|---|---|---|
| Code | \n", "\n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " |
| LAP | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "1 | \n", "0.6 | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "0.6 | \n", "
| MIK | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "2 | \n", "0.5 | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "0.5 | \n", "
| MEE | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "3 | \n", "-0.0 | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "-0.0 | \n", "
| EVA | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "4 | \n", "-0.0 | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "-0.0 | \n", "
| NEU | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "5 | \n", "-0.0 | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "-0.0 | \n", "
| TÄN | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "6 | \n", "-0.0 | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "-0.0 | \n", "
| OGI | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "7 | \n", "-0.0 | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "-0.0 | \n", "
| SUN | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "8 | \n", "-0.9 | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "-0.9 | \n", "
| SOR | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "9 | \n", "-0.9 | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "-0.9 | \n", "
| LAT | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "10 | \n", "-1.1 | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "<img src=\"data:image/png;base64,iVBORw0KGgoAAA... | \n", "-1.1 | \n", "
| overallPosition | overallGapToLeader | Pos | SS_1 Overall | SS_2 Overall | SS_3 Overall | SS_4 Overall | Gap | stagePosition | stageWinnerGap | SS_1 | SS_2 | SS_3 | SS_4 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Code | ||||||||||||||
| MIK | \n", "1 | \n", "0.5 | \n", "2.9 | \n", "0.7 | \n", "1.6 | \n", "0.5 | \n", "2.4 | \n", "-2.2 | \n", "0.9 | \n", "|||||
| OGI | \n", "2 | \n", "-0 | \n", "-0 | \n", "-0 | \n", "-0 | \n", "-0 | \n", "-0 | \n", "-0 | \n", "-0 | \n", "|||||
| EVA | \n", "3 | \n", "-0 | \n", "-6 | \n", "-7.8 | \n", "-8.1 | \n", "-0 | \n", "-6 | \n", "-1.8 | \n", "-0.3 | \n", "|||||
| MEE | \n", "4 | \n", "-0 | \n", "-5.7 | \n", "-9 | \n", "-9.6 | \n", "-0 | \n", "-5.7 | \n", "-3.3 | \n", "-0.6 | \n", "|||||
| LAT | \n", "5 | \n", "-1.1 | \n", "-15.4 | \n", "-17.1 | \n", "-17.1 | \n", "-1.1 | \n", "-14.3 | \n", "-1.7 | \n", "-0 | \n", "|||||
| LAP | \n", "6 | \n", "0.6 | \n", "-16.5 | \n", "-19.6 | \n", "-20.5 | \n", "0.6 | \n", "-17.1 | \n", "-3.1 | \n", "-0.9 | \n", "|||||
| TÄN | \n", "7 | \n", "-0 | \n", "-19 | \n", "-26.1 | \n", "-26.6 | \n", "-0 | \n", "-19 | \n", "-7.1 | \n", "-0.5 | \n", "|||||
| NEU | \n", "8 | \n", "-0 | \n", "-41.7 | \n", "-48.1 | \n", "-48.3 | \n", "-0 | \n", "-41.7 | \n", "-6.4 | \n", "-0.2 | \n", "|||||
| SUN | \n", "0 | \n", "-0.9 | \n", "0 | \n", "0 | \n", "0 | \n", "-0.9 | \n", "0 | \n", "0 | \n", "0 | \n", "|||||
| SOR | \n", "0 | \n", "-0.9 | \n", "-1.1 | \n", "-1.6 | \n", "0 | \n", "-0.9 | \n", "-0.2 | \n", "-0.5 | \n", "0 | \n", "