是否有将图形重置为新加载状态的功能?我试过 cy.reset() 但这只是重置缩放和平移,而不是恢复到原始图形。
还有没有办法恢复所有删除的元素?
谢谢!
调用cy.elements().remove()
和cy.add()
使用相同的图形数据。
将您删除的元素保存在变量中,例如:
const elsRemoved = cy.elements().remove();
然后,为了恢复它们,只需调用:
elsRemoved.restore();
有关更多信息,请参阅https://js.cytoscape.org/#eles.restore
使用数据(这里是.cyjs
从 Cytoscape 导出的文件),通过函数加载到 Cytoscape.js 中,然后单击按钮重绘。
<head>
<script type="text/javascript" src="https://code.jquery.com/jquery-3.5.1.min.js" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script>
</head>
<body>
<div id='cy'></div>
<script>
$.getJSON("ontology2.cyjs", function (data) {
var cy = cytoscape({
container: document.getElementById('cy'),
elements: data.elements,
// ...
});
// Reset graph:
$('button.reset')
.on("click", function() {
cy.remove('node["*"]');
cy.add(data.elements);
});
});
</script>
<button class="reset">Reset</button>
<body>