Hi,
I’m evaluating GoJs for one of my latest projects. I think I developed some understanding of the basic stuff, however I have troubles understanding the layouting features.
A long time ago I used to work with GoDiagram .Net and as far as I remember one could select a layout option and GoDiagram magically created a nice looking layout. In GoJS I can’t figure out how the layouting is suppose to work. I attached a simple example I’m using. The layout is very suboptimal. For instance, I would like to have a top down alignment of the nodes.
Can anyone help me out with a simple example?
var diagram = new go.Diagram(“test”);
var $ = go.GraphObject.make;
var whitegreygradcolor = $(go.Brush, go.Brush.Linear, { 0.0: “white”, 1.0: “lightgrey” });
diagram.nodeTemplate =
<span =“Apple-tab-span” style=“white-space:pre”> $(go.Node, go.Panel.Auto,
<span =“Apple-tab-span” style=“white-space:pre”> <span =“Apple-tab-span” style=“white-space:pre”> { isShadowed: true, shadowOffset: new go.Point(3, 3) },
<span =“Apple-tab-span” style=“white-space:pre”> $(go.Shape,
<span =“Apple-tab-span” style=“white-space:pre”> { figure: “RoundedRectangle”,
<span =“Apple-tab-span” style=“white-space:pre”> fill: “white” },
<span =“Apple-tab-span” style=“white-space:pre”> new go.Binding(“fill”, “color”)),
<span =“Apple-tab-span” style=“white-space:pre”> $(go.TextBlock,
<span =“Apple-tab-span” style=“white-space:pre”> { margin: 5 },
<span =“Apple-tab-span” style=“white-space:pre”> new go.Binding(“text”, “key”)));
var nodeDataArray = [
<span =“Apple-tab-span” style=“white-space:pre”> { key: “A”, color: whitegreygradcolor},
<span =“Apple-tab-span” style=“white-space:pre”> { key: “B”, color: whitegreygradcolor },
<span =“Apple-tab-span” style=“white-space:pre”> { key: “C”, color: whitegreygradcolor },
<span =“Apple-tab-span” style=“white-space:pre”> { key: “D”, color: whitegreygradcolor },
<span =“Apple-tab-span” style=“white-space:pre”> { key: “E”, color: whitegreygradcolor }
<span =“Apple-tab-span” style=“white-space:pre”> ];
<span =“Apple-tab-span” style=“white-space:pre”> var linkDataArray = [
<span =“Apple-tab-span” style=“white-space:pre”> { from: “A”, to: “B” },
<span =“Apple-tab-span” style=“white-space:pre”> { from: “B”, to: “C” },
<span =“Apple-tab-span” style=“white-space:pre”> { from: “C”, to: “C” },
<span =“Apple-tab-span” style=“white-space:pre”> { from: “C”, to: “B” },
<span =“Apple-tab-span” style=“white-space:pre”> { from: “C”, to: “D” },<span =“Apple-tab-span” style=“white-space:pre”>
<span =“Apple-tab-span” style=“white-space:pre”> { from: “C”, to: “E” }
<span =“Apple-tab-span” style=“white-space:pre”> ];
<span =“Apple-tab-span” style=“white-space:pre”>
diagram.model = new go.GraphLinksModel(nodeDataArray, linkDataArray);