Sep 16, 2014 at 12:01 PM
I would like to know if it is possible to calculate clicks in graph in Node XL.


Paula Ribeiro
Sep 16, 2014 at 2:16 PM
Hello! Thank you for the interest in NodeXL!

A clique is a sub-group that has a complete set of internal connections.

The discovery of cliques are not explicitly supported in NodeXL.

NodeXL can group vertices in several ways: by vertex attribute, by connected component and by cluster. See: NodeXL>Analysis>Groups.

One indication that a vertex is in a clique is the high clustering coefficient for that vertex. This metric is reported on the Vertices worksheet.


Sep 16, 2014 at 2:40 PM
Hello, Mark.
Thanks for you quick answer.

I have explored the program and there is a function called Sub-gupos. In this function it is possible to set levels of adjacency we want. Is this not a way to get clicks?
Sep 16, 2014 at 4:12 PM
Yes, NodeXL can select all the neighbors around a selected vertex (and continue to select neighbor's neighbors).

However, this is not the same as a "clique" - which is a set of vertices that all have a complete set of links to one another.


Sep 17, 2014 at 4:22 PM
Edited Sep 17, 2014 at 4:26 PM
Hi Paula,

Clique detection actually IS supported in NodeXL through the Groups menu. Go to Groups->Group by Motif, where you can select the size range of cliques you want to find. NodeXL will even simplify all the found cliques into rounded-X glyphs in the visualization. For example, see this image
and YouTube Video. More details are available in this paper:

Dunne C and Shneiderman B (2013), "Motif simplification: improving network visualization readability with fan, connector, and clique glyphs", In CHI '13: Proc. SIGCHI Conference on Human Factors in Computing Systems.

Note that NodeXL will find a set of maximal, non-overlapping cliques -- it does not expose overlapping cliques. However, if it is important for you to get all overlapping cliques you can use the API:
        ClusterCalculator clusterCalculator = new ClusterCalculator();
        clusterCalculator.Algorithm = ClusterAlgorithm.Clique;
        ICollection<Community> communities;
        if ( clusterCalculator.TryCalculateGraphMetrics(oGraph, oBackgroundWorker,
            out communities) )