用于增量图的节点图布局库

10
我正在寻找一个库,可以提供节点和边,并生成所有节点的坐标列表并布局整齐。但是,应该可以为 某些 节点提供固定位置,但不是全部 ,布局算法应该尊重这些固定位置。
到目前为止,我已经尝试了Graphviz(fdp、neato),它似乎无法保持某些节点的位置并在其周围构建布局。
该库必须可与Python一起使用,因此它应该是Python或C / C ++,以便我们可以编写自己的绑定。
下面的图片正好说明了我要找的内容(这是uDraw项目,似乎不存在作为库)。

uDraw增量布局


1
你找到解决这个问题的方法了吗? - C. Reed
我正在处理一个类似的问题,涉及到在三维空间中的部分图形,但是这很困难。你必须以某种方式存储相对于更大节点的坐标,除非你想通过每次更新向客户端发送整个图形数据。我还没有找到解决方案。你有找到任何有用的东西吗? - inf3rno
1个回答

2

如果有必要,您可以在graphviz中以反向方式完成此操作。为此,您需要先绘制右侧图形,然后使用节点15、16和17设置为style=invis绘制左侧图形。这将给出与此处显示的几乎相同的布局。

我能想到绘制左侧图形时可能会遇到的问题是,软件(dot或其他软件)通常会尝试绘制一个“漂亮的”图形,但是没有节点15、16和17可能就不会留下足够的空间来安排它们,如果后面需要用到它们的话。例如,如果我们尝试在节点11和12之间插入节点12a,则上面显示的图形中就没有足够的空间容纳该节点。另一方面,如果节点12a最初被绘制但是不可见,那么软件将分配给它的空间,在需要时可以包含它。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接