如何放大cytoscape中的选定节点

问题描述 投票:1回答:1

我是javascript和cytoscape的新手。我想生成一个图形,(仍然是硬编码的)

  1. 现在我需要缩放一个被点击的节点..
  2. 此外,单击节点时,显示另一个图形

感谢您的帮助

谢谢

javascript graph cytoscape.js flowchart
1个回答
1
投票

您可以将节点上的click事件绑定到cytoscape,如下所示:

cy.bind('click ', 'node', function (evt) {
    var pos = cy.nodes("[id = " + evt.target.data().id + "]").position();
    cy.zoom({                       // Zoom to the specified position
      level: yourLevel,             // 0 <= yourLevel, maybe try out 1,2,3,4... and see what fits
      position: pos
    });
});

要显示另一个图形,只需执行相同的绑定功能并将元素添加到空图形:

cy.bind('click', 'node', function (evt) {
    cy.remove(cy.elements());                 // remove elements and reset graph
    cy.reset();                               // graph is empty now
    cy.add(yourElements);                     // add new elements
    cy.elements().layout(yourLayout).run();   // give them a layout
});

最后,你可能想要cy.unbind()你拥有的绑定并再次绑定它们,只是为了确保你不会多次调用这些绑定。

亲切的问候!

© www.soinside.com 2019 - 2024. All rights reserved.