Jquery 在重新绘制另一个div时,Cytoscape图发生移位

Jquery 在重新绘制另一个div时,Cytoscape图发生移位,jquery,cytoscape.js,Jquery,Cytoscape.js,我有一组div,每个div中都有一个cytoscape图。每当单击一个div时,我都会尝试在另一个更大的div上绘制相同的cytoscape图。单击一个div时,我能够获得相应图的节点/边 var cy = $('#'+id).cytoscape('get'); var eleData = cy.elements().jsons(); 使用上述数据在较大的div上绘制图形: $("#biggerView").cytoscape({ //Style properties are set

我有一组div,每个div中都有一个cytoscape图。每当单击一个div时,我都会尝试在另一个更大的div上绘制相同的cytoscape图。单击一个div时,我能够获得相应图的节点/边

var cy = $('#'+id).cytoscape('get');
var eleData = cy.elements().jsons();
使用上述数据在较大的div上绘制图形:

$("#biggerView").cytoscape({
    //Style properties are set
    elements : eleData,
    ready : function() {
        window.cynew = this;
        cynew.elements().unselectify();
    }
});
我能够在新的div上获得图形,但问题是图形(小图形和大图形)都从原始位置偏移。 尝试使用
cy.fit()
cy.resize()
,但没有帮助


如果我理解正确:

如果您只想复制事物的外观,您可能只想使用
cy.png()
标记。这可能会更具可扩展性,并保证保持相对大小


如果您想要交互式的二次图,那么您需要计算从主图到每个二次图的缩放/平移差异,以保持相对比例。

您能否提供或至少提供一个屏幕截图,说明“移动”的确切含义?我想在一个更大的div上重新绘制同一个图。我想在以下行的帮助下重用相同的json元素(提供给早期图的节点和边):var cy=$('#'+id)。cytoscape('get');var eleData=cy.elements().jsons();但如上图所示,黑色边框是我的div,我想在其中绘制图形(指定了宽度和高度),而画布是用蓝色边框div绘制图形(图形正在移动)。我想在更大的div上重新绘制相同的图形。想重用相同的json元素(提供给早期图形的节点和边)借助以下行:var cy=$('#'+id).cytoscape('get');var eleData=cy.elements().jsons();但正如您在上图中所看到的,黑色边框是我想要绘制图形的div(具有指定的宽度和高度),而canvas是用蓝色边框div绘制图形(图形正在移动)