Dashboard of My Training Results
By: Ted Löndahl
Tags: Data Visualization, Python, Dashboard, Plotly, Training

The Big Two

For those who are not as familiar with Olympic Weightlifting it circles around two main lifts, the “Snatch” (from the ground to overhead in one move) and the “Clean and Jerk” (from ground to “front rack” and then from that position to overhead). How much you can lift in these two exercises is what matters. It is these two numbers (i.e. your PR’s) that you can stare yourself blind at. Hence it was important to me that it was these two lifts that were in focus and the first thing you saw when entering the dashboard. Furthermore to get a better understanding on how good you are I used the standards at www.strengthlevel.com/strength-standards as indicators ranging from Beginner to Elite.

I visualized everything by plotting it as a gauge with the standards as the background from red (beginner) to green (elite), my goal as a red line and my current PR as the bar with the actual value (in kg) within the gauge and the delta from my last PR below.

Snatch and Clean & Jerk Gauges

Furthermore, In order to get the two gauges next to each other I structured the html elements according to a “twelve-column system”. Which in essence means that each row consists of twelve columns. If you do not specify the number of columns an element is to take up, the element will distribute itself over all twelve columns. However, if you specify how many columns it can use then it will only use the number of stated columns. If i then want two elements (my “Snatch” and my “Clean & Jerk” gauges) on the same row and be of the same size I have to assign each element six columns (12/2=6). If I wanted three equally sized elements then I would have assigned each element four columns (12/3=4) etc.

Illustration of how to assign elements on each row

The code for assigning elements to columns

The Soviets knew what they were doing, right?

Even Though Olympic Weightlifting only consists of two lifts there are a lot of accessory lifts you need to practice in order to fine-tune your technique and strength in each part of the lift. If you are weak in any of the accessory exercises it can often be an indicator on where it is in your lift that you fail and where you need to improve in order to improve your PR in either snatch or clean & jerk. However, as with everything else in life, it is hard to know where you are without references. Hence, I found a table originating from the Soviet Union, and if it is one thing that is true it is that Russians/Soviets know how to lift heavy weights. Anyhow, I combined this data with my own data, and plotted the results in a bullet graph with the Soviet Standards as a background indicators were dark grey = below were you ought to be, light grey = where you’re supposed to be, and even lighter grey/blue means that you can lift more than what you need to (in relation to your PR). Then of course my own result made out the bar.

“Bullet gauges” for the accessory lifts

Future Development

Even though I have a fully functional dashboard I have a few ideas on how to improve the dashboard.

Ability to update a new PR in the dashboard

Filtering what exercises to show

I would like to expand it to show other types of training results such as Crossfit benchmark workouts.