Behind the scenes of “Right place, right time”

Jan Ustohal
Mar 6, 2018 · 10 min read

The Data

Data pre-processing

Data cleanup 🛁

The famous A100 by the Tegel airport (© OpenStreetMap contributors)

Making sense out of it

Analysis 1: Average availability

No technical post would be complete without a screenshot of the IDE. Yes, I use VSCode.

Analysis 2: Average car density per zip code

One of the initial attempts at geoclustering using seaborn

Getting Berlin’s geographical data 🗺

Empty SVG without any data and with a timestamp placeholder which served as the foundation for the generated choropleth map (Based on data from under Open Database License)

Calculating the absolute density of each area over time 💎

Generating the images 🖼

Same image as above, this time using real data to generate the choropleth

Making it all fast ⚡️

~/D/c/python >>> time python 1
Starting processing
Reading data from DB
python 1 533.95s user 21.20s system 93% cpu 9:54.11 total
~/D/c/python >>> time python 4
Starting processing
Reading data from DB
python 4 792.82s user 22.94s system 325% cpu 4:10.76 total
~/D/c/python >>> time python 8
Starting processing
Reading data from DB
python 8 827.38s user 30.15s system 255% cpu 5:35.11 total

Making it move 📹

All the 1020 frames of the resulting video, stitched together with ImageMagick

Was it all worth it?

Jan Ustohal

Written by

Building products 🚀 and trying to make the perfect cup of coffee ☕️. Also 🚴‍. Now working on an early-stage stealth product 🤫. Formerly Marley Spoon, Fyber.

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade