This blog entry was written by Bryan Pierce of Perceptual Edge.
The chances are good that you’ve seen network visualizations before, such as the one below in which the circles and octagons represent large U.S. companies and each connecting line represents a person who sits on the board of both companies.
(This image was created by Toby Segaran: http://blog.kiwitobes.com/?p=57)
While these types of graphs have become more common in recent years, there’s still a good chance that you’ve never created one yourself. This is because, traditionally, to create network visualizations, you’ve either needed specialized (and often unwieldy) network visualization software or a full-featured (and usually expensive) visualization suite. That’s no longer the case. A team of contributors from several universities and research groups, including the University of Maryland and Microsoft Research, recently released NodeXL, a free add-in for Excel that allows you to create and analyze network visualizations.
Using NodeXL you can import data from a variety of file formats and it will automatically lay out the visualization for you, using one of twelve built-in layout algorithms. For instance, here’s one with a circular layout:
Below, the same dataset is laid out using the Harel-Koren Fast Multiscale algorithm, which is one of NodeXL’s two force-directed algorithms. Force-directed algorithms are designed to make all the lines (a.k.a. “edges”) about the same length and to minimize line crossings, which can make for a more aesthetically pleasing and readable graph.
You can also manually select and position the data points (a.k.a. “vertexes” or “nodes”). Here I’ve selected a group of nodes, which are highlighted in red, and dragged them away from the rest of the graph.
Once your information has been laid out, you can start exploring and making sense of it. One useful feature of NodeXL is its implementation of dynamic filters, which is something Excel has been sorely lacking for years. For instance, the graph below shows U.S. Senators in 2007, the connecting lines represent two senators who have voted the same way at least 65% of the time, and the color of each circle represents the senator’s political party (blue for Democrat, red for Republican, and yellow for Independent).
If we want to change how the information is filtered we can simply open the Dynamic Filters dialog box and apply or modify the filters. For instance, here I’ve used the slider below to modify the filter so it only displays connections between senators who have voted the same way at least 95% of the time:
Now we’re down to just a few lines and can see that significantly more Democrats voted the same way at least 95% of the time compared to their Republican counterparts:
NodeXL also supports zooming, panning, scaling, and the ability to automatically or manually create clusters of similar data. Below are a couple examples from the NodeXL website to give you a taste of the visualizations that can be created with it.
NodeXL is currently in beta release, so you might find a few remaining bugs here and there, but if you think network visualizations might be useful for your work, NodeXL provides a great way to get started.