Вы можете установить координаты узлов, используя VisData
и update
, если вы установите их следующим образом:
// data is your data in form of { nodes:nodes, edges:edges }
window.testNodes = new vis.DataSet(data.nodes); // make it globally available for this demo
window.testEdges = new vis.DataSet(data.edges); // if you need to change something about edges too
data = { nodes: window.testNodes, edges: window.testEdges };
network = new vis.Network(container, data, options);
, а затем используйте
window.testNodes.update({id:5,label:'wow',x:100,y:-200})
, чтобы обновить узел с помощьюid == 5
.x:100,y:-200
обновляет координаты курса.
Что касается объединения узлов, вы должны уточнить, что означает «вместе».Например, вы можете создать простую сетку и поместить в нее узлы (установив их координаты, как показано выше).Какие расстояния вы ожидаете от "вместе"?Что еще тебе нужно?Я бы сказал, что это заслуживает отдельного вопроса, если у вас есть проблемы не только с динамическим применением координат.