With a city that has a dedicated bike lanes, no wonder this is very successful! 🚲 #melbournebike #melbournebikeshare #melbourne #victoria #australia #bike #bicycle #racv #landdownunder (at Federation Square)
seen from United States

seen from United States
seen from Türkiye
seen from United States
seen from United States
seen from United States

seen from Türkiye
seen from China
seen from Spain
seen from Argentina
seen from Germany
seen from United States
seen from United States
seen from Maldives

seen from United States

seen from United States

seen from Türkiye
seen from United States
seen from Israel

seen from Maldives
With a city that has a dedicated bike lanes, no wonder this is very successful! 🚲 #melbournebike #melbournebikeshare #melbourne #victoria #australia #bike #bicycle #racv #landdownunder (at Federation Square)
Melbourne bike share scheme
One of the two main data feeds we had to fake in our Living, Breathing Melbourne project for Govhack is actually available! Melbourne Bike Share provides an API, meaning you can get a sort-of live feed of the number of bikes in each station around the city.
http://www.melbournebikeshare.com.au/stationmap/data
It returns a big piece of JSON like this:
[ { "id": "2", "name": "Docklands Drive - Docklands", "terminalName": "60000", "lastCommWithServer": "1410748124274", "lat": "-37.814022", "long": "144.939521", "installed": "true", "locked": "false", "installDate": "1313724600000", "removalDate": { }, "temporary": "false", "public": "true", "nbBikes": "6", "nbEmptyDocks": "17", "latestUpdateTime": "1410746433507" },...
Amongst much fairly uninteresting metadata, the useful data is:
lat,long: location
nbBikes, nbEmptyDocks: number of bikes and empty spaces (and combined, total capacity)
name: a human-readable location
Somewhat disappointingly, the feed itself only seems to update about every 10 minutes (it varies). However, the aggregating server seems to communicate with individual stations more frequently than that - based on my reading of the latestUpdateTime field.
So, what to do with it? How about this zen-like visualisation, which shows both the current number of bikes available in each station, and the occasional drop-off and pick-up.
View the visualization
You'll have to watch it for a while because of the 10 minute update frequency. However, I try to fill in the gaps, by spacing out all changes over the next minute or two. To get a sense of what it would look like with many times more activity:
View the visualization with fake data
The visualisation uses:
A basemap made in TileMill, based on the OSM Bright style, incorporating the City of Melbourne's Urban Forest.
Javascript calls to the BikeShare JSON feed. In the end, I didn't use the excellent PyBikes library.
D3.js to display the circles and bikes moving around. Making the bikes face the right direction was perhaps the hardest bit.