Sunday, October 16, 2011

F1 2011 Korea Race Summary Chart, Laptime Distribution and Podium Battle Charts

A quick review of the F1 200 Korean Grand Prix.

Race Summary Chart:

(Bah - need to tweak the legend:-(

Laptime Distributions:

Here are the laptimes as a heatmap:

Race Battle Charts for first, second and third positions:

Sidepodcast "Driver of the day" layout experiement:


  1. Hi Tony,

    Hope you don't mind my commenting again...

    For the laptime heatmap, I suggest a threshold of 115% from fastest lap. The cars are within 107%, and the laptime spead due to the fuel effect is about 6s in the Korean 100s lap. You might be able to go a bit tighter, but 115% should give a nice start.

    Then the fuel corrected heatmap should be nicely different. If we can get that looking good, then we should be able to get tyre degradation. Or perhaps greenness of track.

    How can I best send you a .png or two?


  2. @james Not at all - I really value your comments, and am just trying to get enough of a grip on your model to feel I can make a sensible comment or two back on your analysese;-)
    I think I may have found a way into getting sensible colour maps on the heatmap, but I need an hour or two to experiment... There's also the issue at the moment that heat is calculated within a column, which makes sense in a lot of respects, but in others is confusing (for example, it might suggest to the reader that a slower car is faster than the fastest...)
    Something else i want to be able to do is plot fastest lap to date laps, and also find a way of highlighting PIT laps.

    I was also pondering the difference in our approaches (ignoring the fact that you are way more knowledgeable and insightful than I am..) I think part of it is that I am interested in generating visuals that in part summarise race and quali data at the level of the 'average' (or even just the occasional) F1 fan and help identify stories at that level, whereas your analyses are far more meaningful but to a more sophisticated fan? So for example, that my charts sort of show pit behaviour and safety car is enough of a summary for the chart to meaningful at the level of 'basic event detection'? The battle chars also try to pick out possible narratives of interest from the race, compared to the race history chart, which has a far hight information density but can only be appreciated by a more knowledgeable reader?

    ..which I guess is to say I;m trying to produce dumbed down eye candy graphics/visualisations that help identify particular event that may be of journalistic interest to the general sports reporter, rather than an F1 (or motor racing) specialist? ;-)

    (Which is not to say that I don't aspire to the sorts of modeling you're doing...;-)

  3. Tony,

    I think that there is a lot complementary in the approaches. I think that there's a huge amount in the data which tells a story that is not always told, and can clarify why some things happened the way they did.

    Where I would really like to get to is to establish the model 'behind the scenes' as a source of knowledge that can be believed to some extent (depending on assumption levels necessary to produce the analysis), but then to be able to communicate the findings in a clear way. The model communicates to experts, but I think that what is learned can be made accessible to the casual viewer. So I am very interested in what you are doing.

    The difficulty with raw laptime data is that the pace of the cars is hidden behind fuel/tyre effects. Where I really want to get to is to remove the effects of tyres/fuel/+++ in order to be able to demonstrate what is 'real' underlying speed and what is not.

    So if I can filter my findings (essentially an underlying pace) through the sort of visualisation that you can produce, we can get the 'real' story communicated.

    I guess you have everything automated - I (+ my computer expert!) did a real time experiment on the Korean race - some bugs, but we should be close for the next one. Are you interested in doing this in real time?


  4. @James Re: having a behind the scenes model that can be clearly communicated - absolutely. Developing such a model was one of the things I wanted to start working towards, but I'd be starting from a standing start (ie no real knowledge about motor sport at all;-)

    As far as the raw laptime vs fuel corrected laptimes go, I do have a crude fuel weight penalty effect model (a linear model using the same parameter set for all cars, as described in ) that I use to calculate a crude fuel corrected laptime for each car. Here's how I started making use of it - qqplots that compare the ranked fuel corrected laptimes between paired drivers:

    As far as raw speed goes, I've started mulling over what we can do with sector times and speeds, as in these plots for example:

    Re: scripts - I am trying to automate as much as I can using the R statistical programming language. I'm not sure if this can be used real time? I'd certainly be interested to start exploring how we might be able to realtime visualisations in the browser, though (something like processing.js might do it?)

  5. Tony,

    I noticed the fuel weight penalty model - and I also use a linear model which is the same for each car. Essentially, I match the laptimes on new tyres (of the same compound) across a number of cars to get it - it's pretty consistent, certainly within my error margins. There are a number of figures quoted on the web - I find that I'm somewhere close. Underfuelling is an issue, but you can usually see it in the race profiles (consistent different pace and step change between two pace levels).

    What bothers me is that the 'true' pace of the cars is hidden behind fuel/tyres/strategy and is not the speed the cars are actually going... I started this because of a Brundle commentary moment in Valencia where it was stated that Perez was ruining his race by staying out when 5s off the pace. I was sure this was wrong - so I set about demonstrating it. If the 'real' pace of the car can be revealed then there must (surely) be a good way of communicating this to the viewer to improve the race-watching experience.

    I haven't used R, but I've written updated my race history chart manipulator to open flash chart + javascript. I normalise out the safety car by making the reference drivers curve flat on the chart - just realised that I can normalise out the whole race doing that and get pace of drivers relative to one another for the whole grand prix. I'll have a play and see what it looks like...


There seem to be a few issues with posting comments. I think you need to preview your comment before you can submit it... Any problems, send me a message on twitter: @psychemedia