gpt4 book ai didi

javascript - 在 cytoscape.js 中获取最小图形高度

转载 作者:行者123 更新时间:2023-12-03 08:51:47 25 4
gpt4 key购买 nike

我有 cytoscape.js 图,具有固定的节点大小和缩放。我想将整个图形(DAG,几乎是树,几乎没有“非树”边)放入具有固定宽度和无限高度的视口(viewport)中。我在实现它时遇到了麻烦。

我使用宽度优先布局。此布局需要边界框(显式或从当前视口(viewport)获取)。我尝试将其插入相当大的边界框,然后从节点位置计算图形高度,然后调整边界框。这是行不通的,因为布局尝试使用尽可能多的空间并拉伸(stretch)边缘。

是否有 cytoscape.js 布局,它可以执行类似 BFS 的操作并指定级别之间的最大距离?或者有更好的方法来解决我的问题吗?

最佳答案

如果您使用avoidOverlap: true,则不必指定边界框。它应该根据需要溢出边界框。您可以指定 spacingFactor 来调整级别之间的间距。

如果您有固定缩放,您可能需要随后调用cy.center()

您无法避免重叠(即溢出)并保证固定大小。您可以通过在布局后将节点位置挤压在一起来手动强制水平宽度 - 但这可能会导致重叠。

参见http://js.cytoscape.org/#layouts/breadthfirst

关于javascript - 在 cytoscape.js 中获取最小图形高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32647447/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com