Siep's Statistiek
Plaatsingsdatum: Jan 09, 2018 11:8:44 PM
Wisten jullie dat ik bij sommige mensen een bijnaam heb? Soms word ik 'Siep statistiek' genoemd. Geen idee hoe ze erbij komen.. Nou ja, in elk geval: ik wilde even wat cools laten zien wat ik de afgelopen tijd in elkaar gesleuteld heb. Ik noem het: 'Siep's Statistiek'.
Zoals zoveel sporters gebruik ik ook Strava om mijn activiteiten in bij te houden. En waar het natuurlijk hartstikke leuk is dat de kudos je daar om de oren vliegen, gebruik ik het vooral voor wat anders. Ik heb namelijk mijn eigen activiteitenregistratie bovenop Strava gebouwd. Waarom? Nou ja, waarom niet, toch?! Je eigen rittenboekje, en als je het één keer gemaakt hebt, hoef je niks meer te doen. Alles gaat helemaal automagisch.
Alleen gaat Siep's Statistiek iets verder dan het gemiddelde rittenboekje. Als ik een activiteit gedaan heb, zoals bijvoorbeeld spinning of een rondje fietsen, dan wordt de ruwe data die verzameld is tijdens die activiteit, automatisch opgeslagen op mijn persoonlijke Google Drive. Zo krijg ik automatisch een backup van al mijn sportgegevens en kan ik die ook makkelijk hergebruiken in andere analysetools als ik wil.
Automatische activiteitenbackup
Maar wacht, er is meer! Naast het automatisch opslaan van alle ruwe data, haal ik ook een samenvatting van elke activiteit op en bewaar die in een Google spreadsheet. En als je deze gegevens eenmaal hebt, dan kun je dat gebruiken om informatie te laten zien waarvoor je anders een abonnement moet nemen bij Strava of een andere partij.
Op dit moment kan ik op basis van deze gegevens al het volgende laten zien:
Ruwe ritgegevens van alle activiteiten
Kilometers per jaar
Verdeling van de kilometers over het jaar, per week
Histogram van de gereden afstanden
Trainingsbelasting per dag en per week (links uren op de dag), rechts aantal activiteiten en type activiteit per week)
Kilometers en aantal ritten per fiets, totaal en per jaar
Locaties waar ik gefietst heb
En dan zijn er ook nog een aantal statistieken zoals totaal gereden afstand, het Eddington nummer, wat gegevens over mijn spinninglessen en nog een paar andere geinige statistieken. Best cool niet?
En hoe werkt dit hele zaakje dan? (alleen voor de liefhebber/medenerd)
Het verhaal start natuurlijk bij het registreren van de activiteit. Hier kun je de Strava app voor gebruiken, maar zelf gebruik ik hier de sporthorloges en fietscomputers van Garmin voor. Maar dat is niet beslist nodig. Alles wat kan uploaden naar Strava kun je gebruiken. Dus ook Polar, Suunto, of andere apps is allemaal mogelijk, zolang het uiteindelijk maar bij Strava terechtkomt.
Als de activiteit is aangekomen in Strava, gebruik ik Google Apps Script en de Strava Api om de gegevens te downloaden. Google Apps Script is een scripting omgeving die bij Google in de cloud op je eigen Google drive draait. Je programmeert in Javascript en gebruik is gratis. Al zijn er natuurlijk wel wat limieten. Maar in de praktijk merk je daar over het algemeen niks van.
Google Apps script
Google Apps script gebruik ik vervolgens om de Strava API te benaderen. Dit is hetzelfde systeem (Strava API v3) wat ook gebruikt wordt door bijvoorbeeld Relive, Veloviewer en vele andere partijen die aan Strava gekoppeld zijn. Via deze API haal ik automatisch al mijn activiteiten binnen en bewaar ze als backup op mijn Google Drive.
Activiteiten sla ik automatisch op in TCX formaat of GPX formaat, wat beide bekende industriestandaarden zijn voor opslag van GPS/activity gegevens. Ik bepaal het formaat op basis van beschikbaarheid van GPS data in de ruwe gegevens. Heeft een activiteit GPS data, dan maak ik er een GPX bestand van, en is er geen GPS data, maar bijvoorbeeld alleen hartslaggegevens, dan wordt het een TCX bestand. Het script groepeert de backups automatisch op type activiteit, maand en jaar, dus het is altijd simpel om een activiteit weer terug te vinden.
voorbeeld TCX data
voorbeeld GPX data
Naast de ruwe activiteitgegevens haal ik bij Strava ook een samenvatting van elke rit op en voeg deze samenvatting toe aan een google spreadsheet. In de spreadsheet zelf bereken ik vervolgens de rest van de statistieken op basis van de ritsamenvattingen. De downloadscripts draaien elke dag eenmaal om alles automatisch bij te werken. Een keertje bouwen, voor jaren plezier!
En in een plaatje ziet dit verhaal er dan zo uit:
Maar waar nu die bijnaam vandaan komt...