What a cool idea. You can certainly draw the nodes, but it would require that you already have the x/y coordinates. Beyond that, I am not sure how you would be able to draw the segments, as my working knowledge of Tableau is limited.
One note. The analysis that I have done on networks has been in R, where various algorithms are applied to the data to generate the layout of the network. In this problem, you would probably already need to know the layout before plotting in Tableau.
It is my opinion that Tableau is not currently an effective tool for doing node-graph/network analysis. Tableau does not have clustering layout algorithms, which is generally what one is interested in discovering -- if you know exactly where each node "should" go so that you can graph that X/Y in Tableau, then you have little need of Tableau's ask-discover-iterate strengths.
I figured out how to get around the lack of inbuilt force algorithm to calculate node placement (geocodes). Basicly I've buil the algorithms in excel and I am running the calculations in excel before feeding them in.
I have now successfully taken an email log file dump and spun that into a Fruchterman-Reingo network diagram in Tableau. Next... how could I make Tableau connect the nodes with a line? Is that possible? So, if there is a relationship between the nodes, could those nodes be visually linked by a line? And where would I do that?
I now also figured out how to get the lines using lines and path functions. Starting to see really cool visualizations. Now I just need to tweek the data so that I can start mining it the way I want to.
But in summary... social network diagrams are possible (and feasible) in Tableau. ;O)
That is awesome. Glad your countless hours paid off. :)
I have a similar problem visualizing transactions between market participants, but have no idea how to get the data into a form that Tableau could use to produce the type of diagram you did. Do you have any documentation on this? Ideally, it would also indicate direction of the transactions (one for buy and the other for sell), and total volume of trades (perhaps indicated by line thickness) is more important than number of transactions.
I have seen similar visualizations for email (the famous "Enron Trampoline") where the line thickness indicated the frequency/quantity of messages.
@jmharkon I am trying to so something similar but I am unable to plot it through Tableau, How did you rearrange your data so that the lines appear as originating from one node? I suppose you are using the Line option from the Marks shelf, what did you put in the Path shelf? Please see the attached output which I created, I am failing to make it originate from one point. Could you please share your workbook?
sna.jpg 101.0 KB
You cannot build the force algorithms in Tableau. I used a excel based model developed by a university to calculate the geo co-ordinates between sender and receiver for my whole population. Then I used the same idea as drawing a geographic representation of shipments of goods between cities. This gives you a static illustration. If you use filters in Tableau the network diagram will not recalibrate automatically... you'll just see that portion of the static drawing. If you want the pro version, you need to figure out a way for Tableau to querry a db with a set of filters and only to run the force algorithm on that sub population. This querry and calculation needs to be lightning fast for the user experience to be nice.
Now if you have need beyond curiosity and budget... I have solution, but cost is x10 compared to Tableau.
Thanks for that! Could you share that excel based model with me and if possible your sample workbook ?
Unfortunately cannot find the excel based tool I used in the past, but if you search for force based or force directed layout algorithms you should be able to find what you need.
Here are a few:
GUESS (aka Zoomgraph) http://www.hpl.hp.com/research/idl/projects/graphs/guess.html
Walrus - Graph Visualization Tool - CAIDA : TOOLS : visualization : walrus http://www.caida.org/tools/visualization/walrus/
The Graph Visualization System daVinci V2.1 http://www.informatik.uni-bremen.de/daVinci/old/
XTango algorithm animation system http://www.cc.gatech.edu/gvu/softviz/algoanim/xtango.html
InfoVis Toolkit http://ivtk.sourceforge.net/
Graph Visualization Framework http://gvf.sourceforge.net/
Cannot share the book since I used customer data to create viz.
Thanks for this. I have explored a few, they can draw good networks but I am unable to find a tool which will allow me to export the coordinate so that I can use them in Tableau. I will check the list you gave above if anyone of them allows me to export.
Other than the export I found NodeXL to be very good. http://nodexl.codeplex.com/
This is really cool and the coordinates I can get from e.g. nodexl. Or did anyone already test it with Version 8.1 and R?
@jmharkon how did you achieve the lines/edges between the Vertices with Tableau?