0

I have graph database with 500+ vertices and 700+ edges. The vertex in my graph represent object of the Class 'Paper', which have members like ID, title, year, publisher, publisherID, author, authorID etc. I want to cluster the sub graphs based on some properties of vertex, like all vertices having same author or publisher will be in one cluster. So there will be separate cluster for each attribute (may be having different color for each type of cluster). So is there any algorithm to achieve this??

Parvez Kazi
  • 660
  • 5
  • 13
  • 1
    This question might be too broad. There are dozens of graph clustering approaches. Some general clustering algorithms are implemented in http://jung.sourceforge.net/doc/api/edu/uci/ics/jung/algorithms/cluster/package-summary.html (and a "Clustering Demo Applet" in http://jung.sourceforge.net/examples.html ). However, from your description, it sounds like you don't even need a particular *algorithm*, but just want to *group* the vertices based on one attribute... – Marco13 Mar 09 '15 at 15:43

1 Answers1

0

As @Marco13 said, it sounds like the 'clustering' you want to do is really just visual identification of vertices with some property in common. (Maybe you also want these vertices to be laid out close to each other, but that's not clear from your phrasing and may not be convenient depending on the topology of the graph.)

It's easy enough in JUNG to render vertices differently depending on their properties; see http://jung.sourceforge.net/doc/api/edu/uci/ics/jung/visualization/PluggableRenderContext.html for details, and check out the PluggableRendererDemo for examples.

Joshua O'Madadhain
  • 2,704
  • 1
  • 14
  • 18