Skip to content

Instantly share code, notes, and snippets.

@benjaminaaron
Last active August 29, 2015 14:20
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save benjaminaaron/91c5b737c86b9abc7301 to your computer and use it in GitHub Desktop.
Save benjaminaaron/91c5b737c86b9abc7301 to your computer and use it in GitHub Desktop.
import org.graphstream.graph.Graph;
import org.graphstream.graph.Node;
import org.graphstream.graph.implementations.SingleGraph;
import org.graphstream.ui.layout.HierarchicalLayout;
import org.graphstream.ui.view.Viewer;
public class graphstreamHierarchicalLayoutTesting {
public static void main(String[] args) {
Graph graph = new SingleGraph("Test");
Viewer viewer = graph.display(false);
HierarchicalLayout hl = new HierarchicalLayout();
viewer.enableAutoLayout(hl);
graph.addNode("A");
graph.getNode("A").addAttribute("ui.label", "A");
graph.addNode("B");
graph.getNode("B").addAttribute("ui.label", "B");
graph.addNode("C");
graph.getNode("C").addAttribute("ui.label", "C");
graph.addNode("D");
graph.getNode("D").addAttribute("ui.label", "D");
graph.addNode("E");
graph.getNode("E").addAttribute("ui.label", "E");
graph.addNode("F");
graph.getNode("F").addAttribute("ui.label", "F");
graph.addNode("G");
graph.getNode("G").addAttribute("ui.label", "G");
graph.addNode("H");
graph.getNode("H").addAttribute("ui.label", "H");
graph.addNode("I");
graph.getNode("I").addAttribute("ui.label", "I");
graph.addEdge("AB", "A", "B");
graph.addEdge("AC", "A", "C");
graph.addEdge("AD", "A", "D");
graph.addEdge("CE", "C", "E");
graph.addEdge("CF", "C", "F");
graph.addEdge("FG", "F", "G");
graph.addEdge("FI", "F", "I");
graph.addEdge("GH", "G", "H");
//hl.compute();
}
}
@benjaminaaron
Copy link
Author

Result of the above:
screen shot 2015-05-09 at 21 35 19

Hierarchical Layout algorithm in yEd:
screen shot 2015-05-09 at 21 39 09

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment