In the previous blog in this series, I used the FastF1 Python package to acquire some Formula 1 telemetry data. Now, I’ll be using that data to create a visualisation of a race track in Tableau.

The lap data obtained for this project is the fastest lap by Max Verstappen from the 2022 Belgian Grand Prix. Once plotted, I’ll be able to use the track map to visualise the telemetry, and dive into the data behind a lap of the Spa-Francorchamps circuit.


Key Data Requirements

The key telemetry required to plot a circuit:

  • X and Y coordinates (relative position on the track)
  • Timestamps for each set of coordinates

It is critical that each set of coordinates (denoting the position of the car on the circuit) is linked to a timestamp, ideally the lap time in the specific lap.

This data can then be combined with Tableau’s ability to plot a path to create a track map.


Plotting the Race Track

The first step is to place the X coordinates onto Columns, and the Y coordinates onto Rows. This initially gives a single point due to the default aggregation, but don’t worry, it will eventually take shape!

Image 1: Adding coordinates to rows and columns


For me, the aggregation used doesn’t matter as each set of coordinates has a unique associated timestamp. As I’ll be using the timestamps to plot the path around the track, the aggregation for each point will only include a single set of coordinates. Here, I’ll leave it as the default SUM.

Next, I will add my time data to the view, and use this as a path for the data points. Currently, there is no option to add a Path in the Marks Card. This is because the chart type is set to Automatic and has defaulted to Shape. To allow me to add a Path, I must first change the chart type to Line.

Image 2: Converting to a line chart


This gives me an option to add a Path in the bottom right of the Marks Card!

Image 3: Path is now available on the Marks Card


Now I have this option, I can drag my time data to Path on the Marks Card.

Image 4: Adding the Time dimension to Path on the Marks Card


It’s a simple as that! I now have the base for my track map!

Image 5: The track shape is now visible in the view


Adding Telemetry Data

So, I have my track layout. What next? Firstly, I want to add some data that will add some context to a lap of the circuit.

I’m interested in the speed of the car at various corners around the track. To visualise this, I will drag my speed measure onto Color on the Marks Card. I’ll also change the colour to Red-Gold since that says “fast” to me! Additionally, I will increase the width of my “circuit” by clicking Size and adjusting from there.

Image 6: Track map with car speed shown in colour


Formatting my Race Track

Great! I have a track map with some interesting speed info! Now I just want to tidy up the formatting.

I would like the track to have a nice border, so it really pops and gives it a racetrack feel. To achieve that, I will duplicate the track so I can then format the two independently. The first step here is to duplicate both the X and Y coordinates on the Rows and Columns shelf. Initially, this will create four mini tracks. I can then bring these together by clicking the down arrow on the newly created X measure and selecting the Dual Axis option. I can then repeat this for the new Y measure.

Image 7: Creating a dual axis


My two tracks are now sitting on top of each other but, before I move on to the final stage, I need to synchronize my axes to ensure they always line up perfectly! To do this, I right click on each of the axes and ensure that Synchronize Axis is ticked. Once that’s done, I can deselect Show Headers and format the chart so that no gridlines or borders are displayed.

Image 8: Synchronizing axes

Image 9: Track map with axes and borders removed


For the finishing touch, I simply remove my Speed measure from Color on the Marks Card for my first track (the one that is sitting furthest back in my view). I then adjust the sizes to liking, and voila! My track is finished, complete with speed data for Max Verstappen’s lap of Spa!

Image 10: Completed track map with speed overlay for the Spa-Francorchamps circuit



Want to give this a go yourself? Check out my previous blog where I detailed how I acquired this dataset! If you don’t fancy that, here’s the data used to create the chart!

If you’d like to see more like this, check out my viz on Tableau Public where I have created a dashboard detailing Lewis Hamilton’s race lap record around Suzuka!


Other Blogs in This Series

Data in Motorsport: The Best Online Resources for Formula 1 Data

Data in Motorsport: Acquiring Formula 1 Telemetry Data using Python and FastF1

Jonathan Carter
Author: Jonathan Carter