OK. I started with the Beat Paths sample, Beat Paths.
The only changes I made were in the creation of the model and specifying a Group template:
myDiagram.groupTemplate =
$(go.Group,
$(go.Placeholder),
{ layout: $(go.GridLayout) }
);
// create the model and assign it to the Diagram
var model =
$(go.GraphLinksModel,
{ // automatically create node data objects for each "from" or "to" reference
// (set this property before setting the linkDataArray)
archetypeNodeData: {},
// process all of the link relationship data
linkDataArray: linkDataArray
});
// add a bunch of nodes that are linked normally,
// but all those nodes also belong to a transparent Group:
var groupdata = { isGroup: true };
model.addNodeData(groupdata);
for (var i = 0; i < 20; i++) {
var nodedata = { group: groupdata.key };
model.addNodeData(nodedata);
model.addLinkData({ from: nodedata.key, to: "CAR" });
}
myDiagram.model = model;
}
That results in this screenshot:
Note that the Group has no visuals, so you only see its member Nodes.
