I'm trying to create something similar to this.

enter image description here

So, 3 different Node classes, and a whole bunch of relationships between them. In my case, there should be roughly half of the number of nodes present at most.

What I'm looking for is recommendations as to the best way to create a similar type of graph. Spent some time looking at R/GGplot2, but haven't found any solutions so far. I expect it's because I'm not using the correct vocabulary.

The posted image was created using a proprietary app that I unfortunately am not able to leverage, otherwise I'd simply use that.

Any suggestions/solutions would be fantastic!


closed as off-topic by gung Mar 2 at 1:50

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "This question appears to be off-topic because EITHER it is not about statistics, machine learning, data analysis, data mining, or data visualization, OR it focuses on programming, debugging, or performing routine operations within a statistical computing platform. If the latter, you could try the support links we maintain." – gung
If this question can be reworded to fit the rules in the help center, please edit the question.

  • $\begingroup$ The thread at stats.stackexchange.com/questions/9040/… is closely related: although the application is different, it concerns visualizing bipartite graphs. $\endgroup$ – whuber Apr 11 '11 at 14:59
  • 1
    $\begingroup$ You might want to also check out some of the other questions with the tag network, stats.stackexchange.com/questions/tagged/networks . They will have suggested graphics and tools to do those graphics as well. $\endgroup$ – Andy W Apr 11 '11 at 16:28
  • 1
    $\begingroup$ With Graphviz you can easily make graphs like this: graphviz.org/content/unix $\endgroup$ – GaBorgulya Apr 11 '11 at 17:01
  • 1
    $\begingroup$ unfortunately that's not standard terminology. I was just referring to some methods using that term in order to more easily distinguish them from some of the other approaches being discussed. The overlap in meanings of the term "graph", especially in this visualization context is unfortunate and makes Google searches more challenging. $\endgroup$ – cardinal Apr 11 '11 at 17:20
  • 1
    $\begingroup$ Try Pajek. It also supports plethora of export options, so you can easily modify figure in dedicated software (e.g. Inkscape). $\endgroup$ – Andrej May 4 '11 at 15:51

Gephi, an open source network visualization software, can do that: http://gephi.org

See this recent discussion on what a user was able to do with a bipartite graph, which is what you have. It is also called a bipartite network, or a two-mode network in Social Network Analysis.

Thought you'll need some trick, because Gephi doesn't have a layout to handle that directly. Feel free to ask the user how did I get that.

(disclamer: I'm part of this community)

  • $\begingroup$ Great, thanks for the idea Seb. Checking it out now. $\endgroup$ – Jacques Tardie May 4 '11 at 14:30

Not the answer you're looking for? Browse other questions tagged or ask your own question.