Как увеличить выбранный узел в cytoscape - PullRequest
0 голосов
/ 10 сентября 2018

Я новичок в javascript, а также в cytoscape. Я хочу сгенерировать график (все еще жестко запрограммированный)

  1. Теперь мне нужно увеличить узел, на который нажали.
  2. Также при щелчке по узлу отображается другой график

Ценю вашу помощь

спасибо

1 Ответ

0 голосов
/ 11 сентября 2018

Вы можете привязать событие 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 () привязать и связать их снова, просто чтобы быть уверенным, что вы не вызываете эти привязки несколько раз.

С уважением!

...