This graph visualizes the OpenFlights data set, which holds the information about airports around the globe and air traffic between them. In addition, the GeoNames data set was used to obtain the population value. Unfortunately, it was not always possible to map the cities from first data set to the cities from the second data set and therefore the graph visualizes only subset of the data.

Cities are represented by circles organized on three main axes: Asian, European and North American. Population number is expressed in a distance from the centre where far means more and close means less inhabitants. Size of a circle represents the number of airports that serve this particular location. Links serve as flight connections between cities. For the visual purposes, only intercontinental flights are shown.

Zoom button performs non-linear but monotonic transformation of the space so that the dense regions of small population are more visible on the graph.


Neo4j #ShowMeYourGraph Twitter Contest was my main motivation and a great reason behind many hours spent on experimenting and testing my skills and patience while working with the hive plot.

Hive plot is a type of a graph layout by Martin Krzywinski which attempts to organise large networks and position nodes in a more insightful way as opposed to other 'hair ball' styled layouts e.g. force directed.


Visualization was created using D3.js (starting from this template) and the code is open and available on GitHub.

I teamed up with a very good friend of mine who deals with digital media on a daily basis and while I took charge of the tedious work of data cleaning and preparation, he made sure that the final result is really pleasant to look at. In the final stage some scripting was added to make the experience interactive et voila.

Made with <3 by Dominik Cygalski and Lukasz Gajdek.