Chart layout question

Jun 20, 2011 at 7:38 PM

Noob alert! I've been assigned a new project, have experimented with NodeXL for 4 days, have no background in social networking, but I'm a pretty smart Data Manager and I can do this. While I wait for the book to arrive I've been experimenting and watching demos and reading PowerPoint presentations, and I've learned a lot and had some success. I'm running Excel 2007 on Windows 7.

This is a basic question, but I can't figure out the answer.

I have to set up a simple system in which health provider agencies can document some small social networks quarterly in order to evaluate their testing procedures. They will be using the graphs only for printing, no electronic submissions or drilling down. Probably not more than 100 vertices on a page and no more than 3 levels of connections.

When I set this up, I cannot get the the people to cluster around their immediate connection using the Fruchterman-Reingold graph. It looks like a pile of pick-up sticks. I can trick it by graphing a circle first, but when I switch to F-R, the vertices don't cluster around the focus of their network. It's clearer, but barely. It probably has to do with one of the columns of data being empty, but I don't know which one nor what the acceptible data range is for each. I have experimented with those columns, but since Betweeness Centrality and Eigenvectors, etc., are Greek to me, I'm at a stopping point.

Even the Sample Workbook is useless to me. I can't find anything in its data that would suggest how they got that chart to be so orderly.

Any suggestion?

Thank you.

Bill Pearson

Jun 21, 2011 at 5:30 AM
Edited Jun 21, 2011 at 4:30 PM


The Fruchterman-Reingold graph layout algorithm attempts to lay out the graph in an aesthetically pleasing manner. It may or may not reveal clusters of related vertices in the process, and in your case it sounds like it isn’t revealing them adequately. That’s not the fault of the algorithm, which was not designed for that purpose.

But all is not lost. One thing you can try is to apply an algorithm that does attempt to reveal clusters of related vertices, and then tell NodeXL to lay out the graph in a way that makes the resulting clusters stand out. Follow these steps:

1. In the Ribbon, select NodeXL, Analysis, Groups, Group by Cluster. This partitions the graph’s vertices into groups of related vertices. (The group information is stored in the Groups and Group Vertices worksheets, although you don’t need to be concerned about those details.)

2. In the Ribbon, select NodeXL, Graph, Layout, Layout Options.

3. In the Layout Options dialog box, select “Lay out each of the graph’s groups in its own box and sort the boxes by group size.” Click OK.

4. Refresh the graph. The vertices that the cluster algorithm determined were related to each other are now in their own group, and each group is in its own box.

That may not be the effect you’re aiming for, but give it a try.

 -- Tony

Jun 22, 2011 at 3:14 PM

Thanks, Tony.

I was only using the F-R graph because the others were obviously not what I needed after I tried them out.

The method you provide works to get the clusters gathered around their core member (pardon me if I use laymen's terms, this is all new to me), but links between the clusters are scattered all over the page, so I have to manually drag the clusters around to make things clear. That's fine for me, but not for the small medical service providers who will have to do this. I need something that will lay out a few clusters in an orderly fashion, similar to 2 of the graphs on the nodeXL home page: Some NodeXL Features and NodeXL is Brought to You By... .

I know that we are using the product in a different manner than most researchers (documenting groups that we know exist rather than using the data to discover links), but it seems that I should be able to do this. Is there a data column that I can fill in that will force the clusters to interact better with each other? 

Take care.

Bill Pearson 


Jun 23, 2011 at 12:57 AM


Have you tried the Harel-Koren layout algorithm? It’s likely to give better results than Fruchterman-Reingold in your case.

I’ve been told that the two graphs you referred to were initially laid out with Harel-Koren, then manually fine-tuned by selecting and dragging groups of vertices. In other words, NodeXL may not be able to give you the completely automated results you would like.

If it helps at all, there are multiple ways to select groups of vertices to simplify the fine-tuning process. Hover your mouse over the three arrow buttons in the graph pane’s toolbar for some selection options, and also right-click a vertex in the graph pane and see the first group of commands in the right-click menu, which are all selection related.

-- Tony