【问题标题】:Node graph layout library for incremental graphs增量图的节点图布局库
【发布时间】:2013-05-30 06:48:51
【问题描述】:

我正在寻找一个库,它可以提供节点和边,并生成一个布局良好的所有节点的坐标列表。但是,应该可以为 一些 提供固定位置,但不是所有 布局算法应该尊重的节点。

到目前为止我已经尝试过graphviz(fdp,neato),它似乎无法保持某些节点的位置并围绕它们构建布局。

该库必须可与 python 一起使用,因此它应该是 python 或 c/c++,以便我们可以编写自己的绑定。

以下图片准确地说明了我正在寻找的内容(这是 uDraw 项目,它似乎不作为库存在)。

【问题讨论】:

  • 你找到解决这个问题的方法了吗?
  • 我正在研究与 3d 空间中的部分图类似的东西,但这很难。您必须以某种方式存储相对于较大节点的坐标,除非您想在每次更新时将整个图形数据发送给客户端。我还没有解决方案。你有没有发现什么有用的东西?

标签: layout graph nodes graphviz


【解决方案1】:

如果这对您有用,您可以在graphviz 反向中执行此操作。为此,您将首先绘制右侧图,然后绘制左侧图,其中节点 15、16 和 17 设置为 style=invis。这将为您提供与此处显示的布局大致相同的布局。

首先绘制左侧图表时我能察觉到的一个问题是,软件(dot 或其他东西)自然会尝试绘制没有节点 15、16 和 17 的“漂亮”图表,并且如果以后需要安装节点 15、16 和 17,可能不会留下足够的空间。例如,如果我们尝试在节点 11 和 12 之间插入节点 12a,则在上图中该节点将没有空间。另一方面,如果节点 12a 最初被绘制但不可见,则软件将为它分配空间,以后可以将其包含在其中。

【讨论】:

    猜你喜欢
    • 2011-12-23
    • 2011-11-29
    • 2019-09-09
    • 1970-01-01
    • 1970-01-01
    • 2016-07-04
    • 2015-03-18
    • 2014-10-27
    • 2013-02-28
    相关资源
    最近更新 更多