Importing multiple graphml files into one NodeXL workbook

Oct 26, 2011 at 12:53 AM

Hi there,

I would like to automatically import multiple graphml files into one NodeXL workbook. I've done it manually (, but it takes quite some time if you have 100+ graphml files.

Is there any way to speed up the process?

Thanks a lot.



Oct 26, 2011 at 1:24 AM


Not that I know of.  If you could find some external program that could combine the GraphML files for you, then that would do the trick.  But I doubt that any such program exists, because in general, combining GraphML files doesn't really make sense and can lead to unpredictable results.  (I assume that in your case, the vertices are unique to each GraphML file, and that's why it works for you.)

-- Tony

Oct 26, 2011 at 1:35 AM

Thanks for your quick reply Tony!

No problem. I thought that there was no other way, but it was worth asking.

Yes, the vertices are unique to each graphml file (ego facebook friendship networks).

However, I expect overlap in the sense that one vertex might be part of more than one friendship network. Thus, I  combine the ego networks to identify common friends - let me know if you think that this would also lead to unpredictable results.




Oct 26, 2011 at 1:50 AM
Edited Oct 26, 2011 at 1:50 AM


If the same vertex exists in two GraphML files, NodeXL will import the vertex from the first file and discard the vertex from the second file.

Do your GraphML files include vertex attributes?  If so, just be aware that the vertex attributes you'll find in the Vertices worksheet when you are all done came from the first GraphML files in which those vertices were encountered, and that subsequent attributes, which may have been different from the first set, were discarded.  That's what I mean by unpredictable results.  (Well actually, I was just able to predict what will occur, but that's only because I'm the programmer.  The behavior certainly isn't obvious.)

-- Tony

Oct 26, 2011 at 2:25 AM

Thanks, Tony!

Yes, graphml file includes vertex and edge attributes and in both cases NodeXl imports the attributes only from the first file - thanks to you the not so obvious result becomes predictable from now on!

I'll be extra careful.

Thanks again.