This is a sample transportation network flow I've done a year ago based on 26 zones. alt text

For a project I'm working on now, I need to represent the flows over 1,000 zones with directionality.

  • Any suggestions on displaying the information in a nice and non overwhelming way?
  • Any examples on displaying network flows in heavy urban areas?
  • Color suggestions and thickness schemes?
  • any "not to dos" when representing network flows?

closed as too broad by PolyGeo Apr 30 at 12:32

Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • 2
    Don't have any great ideas at the moment, but it's a great question! – fmark Aug 5 '10 at 14:31
  • 5
    * * When flows are tightly packed, data can become more like a continuous surface. To represent such data, you can use heat maps, isolines, vector fields, etc. * * Decoupling the data from actual space will make a cartogram or graph (and these can be very elegant), but usually at the loss of geographic context. You'll need to balance your application with such trade-offs. * * The third choice is to find a way to aggregate and simplify your flows so the linear components individually still have visual meaning. – glennon Aug 5 '10 at 17:42
  • Do you have one source/destination of traffic flow for all 1,000 zones - like in your example above - or do you have multiple ones? – underdark Aug 6 '10 at 12:02

I found a couple of good examples lately and figured would update the thread with these pretty cool examples

A recent article in the open journal PLoS, Redrawing the Map of Great Britain from a Network of Human Interactions by: Carlo Ratti, Stanislav Sobolevsky, Francesco Calabrese, Clio Andris, Jonathan Reades, Mauro Martino, Rob Claxton, Steven H. Strogatz PLoS ONE, Vol. 5, No. 12. (8 December 2010)

alt text

Another one I came across this morning,

Facebook worldwide friendships Mapped (via the Flowing Data blog) alt text

  • 3
    Ooh, you should probably cross-post these pictures to the "Beautiful Maps" thread. – jvangeld Dec 15 '10 at 4:59

Similar to the graph suggestions by @Adam Matan there is a tool called Flow Map Layout that will create a tree like visual of data. Perhaps you can use something like that.

My basic intuition would be displaying the data as a graph, not as a map. Think of it as a subway line map: It does not display the lines on a geographic map, but as abstract lines which intersect on junctions. That way you can focus on the important part (i.e, the next station; how to move from one line to another) instead of being distracted the actual fractured geometry of the line.

Graphviz is definitely the best choice when it comes to graphs. You can control nearly any aspect of your graph - Colors, shapes, line types, order, size and many more. Graphviz processes intuitive text files which contain nodes and edges.

I had great experience with a recent project I've worked on few months ago, and I highly recommend it ever since.

Some examples from the Graphviz gallery that might suit your need:

Radial layout:

You can put the major cities at the inner circle, and shape the lines according to the density of the traffic. It's probably the best way to show all the cities.

alt text, link

Tree-like structure:

That's a good choice if you want to represent the connection of the suburbs to main cities. alt textlink

Ordinary graph:

This is a nice choice if you decide to omit smaller cities and focus on the major MTAs. Of course, you can control the colors and make the graph more vivid. alt text


  • The second image from the graphviz site has a large amount of transparent space around it, could you find an alternate image or throw up a clipped version hosted elsewhere? – scw Aug 5 '10 at 18:54
  • Fixed the image, thanks. – Adam Matan Aug 6 '10 at 9:46
  • great, thanks Adam. – scw Aug 6 '10 at 9:54
  • 2
    +1, a graph approach is definitely worth considering. If you're using ArcGIS, perhaps also consider getting an eval for ArcSchematics. – Kirk Kuykendall Aug 10 '10 at 3:18

There is an interesting project from Ilya Boyandin on the go - JFlowMap.

It's not yet publicly available but screenshots look very promising indeed. More info here and here.

You might be also interested in browsing some of the papers about movement geovisualization from Natalia & Gennady Andrienko.

Update 1: GraphRECAP and FlowMap might also be of some help.

Update 2: There is a very useful article on the topic:

Jenny, B., Stephen, D. M., Muehlenhaus, I., Marston, B. E., Sharma, R., Zhang, E., & Jenny, H. (2016). Design principles for origin-destination flow maps. Cartography and Geographic Information Science, 1-15. (pdf)

@underdarkGIS built upon this and implemented first ideas in QGIS:

enter image description here

This is a hard problem that as far as I know is not solved. A look at the current literature ( seems to support this view. Alisdar Rae has some interesting maps in that might help you but I'm not really sure that you get much information from them.

Oliver Duke-Williams did some nice visualizations of 10K+ ward to ward migrations from the 1991 GB Census that were a rectangular grid coloured by flow size but you loose the directionality again.

  • This paper (Wood et al., 2010) perhaps uses a similar concept in visualizing flows by using heat maps and small multiples. Do you have a particular example of the work by Duke-Williams you are referencing? – Andy W Sep 13 '11 at 17:05

Firstly, am I correct that the image shows a polygon to point relationship? If so you want to make sure that the polygons stand out more and should visually match the links. I would suggest choosing a group color (say blue), use light blue polygon fill, a dark blue border (helps the eye resolve the edge of the polygon) and medium blue for the link (associates the link with the polygon).

I would not use color to express the flow volumes in the links as you have done above, it will probably be too busy with lots of links, width and transparency are the variables to play with.

Secondly, the essence of the problem is volume of data, it isn't possible to produce a simple graph of the suggested 1000+ network as the visualization would be very cluttered. The two main suggestions so far seem to be to collate edges together (tree visualization) or to produce a graph where disconnecting the locations from real space in effect creates more space to visualize the connections (in the same way by losing true locations the famous tube map of London creates more 'space' in the centre of London to help visualize the connections between tube stations that are very close together). Both these have value but the graph has the obvious disadvantage that you whilst you've visualized the network, you have lost the real spatial positions.

An alternative is to cope with the data overload by splitting the data into groups. If there are no logical groups then directional segments (N, NE, E etc) is a possible way to do it. I would build a visualisation where all the relationships are grayed out, on mouse rollover the relevant polygons and links appear in bold color. A sub option would be to work the mouseover via toggle clicking or radio layer buttons where multiple sections could be chosen at once.

You could also produce an animation where the links are shown as 3D loops and the segments are ungrayed one by one with the camera viewpoint changing to make maximum use of the 3D (see which shows what I mean by loops and camera view changes). After the animation is shown, users could be allowed to explore the map freely with radio buttons controlling the segments or groups of data.

This is not that complex to achieve using Google Earth client or API and kml, I've blogged about producing loops here and tours here kml is pretty easy to work out

Whilst I'm always one to worry that 'flashy' visualisations are clever but ineffective, I suspect this one will work be effective and the bonus is that the 3D animation will impress most clients.

This article looks at how to classify flow data based on the node it comes from....the exact method needs some help, but the idea might be useful.

Not the answer you're looking for? Browse other questions tagged or ask your own question.