CytoscapeJS 删除节点并移动边缘
CytoscapeJS remove node and shift edges
在 CytoscapeJS 中,我想删除一个节点(或 "hide" 一个节点),然后得到的行为是——在删除该节点时——我传播边缘关系。换句话说,如果我有 A -> B -> C
,我删除了 B
,我希望有 A -> C
,而不是 A
和 C
作为不同的节点他们之间没有优势。有没有办法在 Cytoscape 中做到这一点?还是我必须推出自己的解决方案?
在删除 B 之前是这样的:
var A = B.incomers().nodes()[0];
var C = B.outgoers().nodes()[0];
cy.add({
data: { source: A.id(), target: C.id() } // ...
});
如果 B 有超过 1 个出局者或超过 1 个入局者,则需要循环。
在 CytoscapeJS 中,我想删除一个节点(或 "hide" 一个节点),然后得到的行为是——在删除该节点时——我传播边缘关系。换句话说,如果我有 A -> B -> C
,我删除了 B
,我希望有 A -> C
,而不是 A
和 C
作为不同的节点他们之间没有优势。有没有办法在 Cytoscape 中做到这一点?还是我必须推出自己的解决方案?
在删除 B 之前是这样的:
var A = B.incomers().nodes()[0];
var C = B.outgoers().nodes()[0];
cy.add({
data: { source: A.id(), target: C.id() } // ...
});
如果 B 有超过 1 个出局者或超过 1 个入局者,则需要循环。