How to lay out separate graphs for groups separetly, and other questions......

May 29, 2013 at 11:15 PM
I'm new to this, so apologies for possible duplication. Here's what I'm doing and where getting stuck - would appreciate help: I'm trying to 'see' (analyze) the relationships (political, economic, personal, etc.) that exist among participants in a particular public policy environment. I've only 145 vertices (i.e., participants).

I'm using 'betweenness centrality' to show the importance of each node in the network (followed suggestion in Peter Aldhous's Feb 24, 2012 paper). In the network I'm analyzing, there are 5 (five) groups of participants (e.g., corporations, NGO's, etc.). I've manually assigned each vertex to a particular group, e.g., Red Cross is assigned to the NGO group and so on. I'm using Harel-Koren fast multiscale algorithm to layout the graph for ALL participants (vertices) - the outcome shows connections and so forth. So far so good.

Now, here are my questions and where I'm stuck: (i) I'd like to analyze each of these five groups separately and get five separate graphs, but not sure how to do it without creating five separate NodeXL files, (ii) I'm having difficulty getting image that is legible when transferred for inserting into MS Word or ppt - what is the best way to do it? (iii) should I be using something other than 'betweenness centrality?' for vertex size, and (iv) should I be using something other than the Harel-Koren algorithm?

Thank you very much and please let me know if any clarification needed.
May 30, 2013 at 12:17 AM

Thank you for the interest in NodeXL!

(i) If you have created Groups by vertex attribute you can turn off the display of each group by controlling the Visibility column of the Groups worksheet.

(ii) Right click the graph pane to access the Image options. You can output to a range of formats at any resolution you define.

(iii) Betweenness centrality is one of many network metrics. NodeXL also calculates Closeness and Eigenvector Centrality as well as PageRank. I encourage you to experiment with the metrics in the NodeXL workbook to find which highlight useful insights in the structure of your data.

(iv) Like network metrics, the best layout algorithm will depend on the nature of your data. Try the variuous choices (and explore the "Layout Options" in the Layout menu.


May 30, 2013 at 4:14 AM
Hi Marc,
Thank you for your very prompt response. Your suggestion to my problem #1 solved the issue right away - thank you! I'm, however, still having problem with 'save image to file' regardless of the formats I select besides XPS, which unfortunately can't be inserted on Word or ppt, i.e., issue #(ii) remains an issue! Increasing the 'scale' would improve legibility but that will make vertex label overlapping worse! So, is there a 'Goldilocks' solution? :-)

Thanks for your suggestions on my issue # (iii) - I've tried different metrics but the 'betweenness centrality' and 'Eigenvector centrality' seems to work best and given Peter's article, I think I'll use 'betweenness centrality.'

Regarding the layout algorithm or issue #(iv), given the characteristics of my data set, my only choices are either Fruchterman-Reingold or Harel-Koren; while the former does show a nice visual representation for a group (without other groups being present), it is not very useful/intuitive when ALL groups are present (i.e., none are hidden). Also, I'm not sure at what point (or after how many click on 'Lay out again') the layout gets stable - this is less of a problem when analyzing only one group. As you can probably guess, I'm trying to simplify things and try to resolve my problems quickly (perhaps at the cost of not learning in-depth), so any suggestion would be very much appreciated

Last but not the least, bought your book to learn how to use NodeXL but like any book of similar nature, it has its coverage limitations because probably it was not possible to have all steps, instructions, and nuances included there (and that's why this discussion forum is so helpful). Nonetheless, in the next edition of your book, including instructions (or tips) to some common issue (e.g., your solution to my issue #(i)) and clarifying some important steps (e.g., what does 'margin' means in the 'layout option' in the graph?) would be very helpful for novice users like me. Thank you very much!
May 30, 2013 at 5:28 AM
On the image quality issue, there are two things that can mess things up.

First, you want to save the image to an appropriate format. "BMP" is best, because it's lossless, but it also results in large files. Second-best is "PNG", which is often visually indistinguishable from BMP and produces much smaller files.

Second, you want to avoid--at all costs!--having Word or PowerPoint resize your image, which will wreak havoc with the image quality. I believe Word will leave the image at its natural size (and therefore best quality) if the image fits within the page margins. Otherwise, it will shrink the image to fit, and all hell will break loose as edges get the jaggies and labels get all blurred. So the secret is to resize your graph pane before saving an image so that the saved image will fit within a Word page. (By default, NodeXL uses the graph pane size as the saved image size.)

-- Tony
May 31, 2013 at 3:51 AM
Hi Tony,
Could you please elaborate on your comment, "So the secret is to resize your graph pane before saving an image so that the saved image will fit within a Word page. (By default, NodeXL uses the graph pane size as the saved image size.)?" Specifically, how would I 'resize' the graph before saving an image for ppt or word? I'm at lost here and would appreciate your detailed help - thank you!
May 31, 2013 at 5:39 PM
Sure. Sorry if my reply was too brief.

The goal is to insert a graph image into a Word document without having Word resize, and therefore degrade, the image. There are several ways to do that, but here is a technique that's worked for me.
  1. Open your Word document in Word and your NodeXL workbook in Excel.
  2. In the ribbon in Word, set View, Document Views to "Print Layout". (That's in Word 2007. I hope it's the same in 2010 and 2013.)
  3. In the Excel window, left-click your mouse on the "Document Actions" text at the top of the graph pane. The cursor will turn into a 4-way arrow. While holding down the left mouse button, drag the graph pane out of the Excel window and on top of the Word window. The graph pane is "detachable," so you can actually put it anywhere on the screen.
  4. Once the graph pane is detached and on top of the Word window, resize the graph pane so it fits within Word's page margins. You can do that just like with any other window, with a click-hold-drag of the left mouse button on any of the graph pane's outer borders.
  5. The graph pane is now the size you want, but the resizing may have distorted the graph. Click "Refresh Graph" to fix this.
  6. Right-click the graph pane and select Save Image to File, Save Image from the right-click menu.
  7. In the "Save Image to File" dialog box that pops up, set "Save as type" to "PNG (*.png)", then save the file.
  8. Drag the graph pane back into the right side of the Excel window. Excel is a bit touchy about this, and you may have to try several times to get the graph pane back where it belongs.
  9. In Word, use Insert, Illustrations, Picture to insert your saved image into the page.
The result should be that the inserted image looks just like the graph pane did in step 5 (without the graph pane's buttons, of course).

-- Tony
May 31, 2013 at 5:40 PM
I haven't tried this technique in PowerPoint, but I would expect it to work there, too. If it doesn't, let me know.

-- Tony
Jun 1, 2013 at 5:26 AM
Thanks, Tony. It is better than before - I still need to play it around a bit. btw, step #4 was not easy! With the understanding that you all are continue to work on improving NodeXL, I hope that you'll find better ways to capture/print (or whatever you want to call it) the network diagrams (pictures or whatever you may want to call it) - thank you all in advance.
Best wishes,
Jun 1, 2013 at 6:16 PM
There are a couple of other techniques I didn't mention. First, you can save an image to an exact size that you specify by right-clicking the graph pane and selecting Save Image to File, Image Options. Second, you can copy the graph image to the Windows Clipboard by right-clicking the graph pane and selecting Copy Image to Clipboard, and then paste the image in any program that accepts images.

There is more information about saving images in the "Saving an Image of the Graph" topic at NodeXL, Help, Help.

-- Tony
Jun 4, 2013 at 12:27 AM
Thank you for the additional info!