【问题标题】:Graphviz splines=false has no effect on undirected graph with bi-directional a -- b/b -- a edgesGraphviz splines=false 对具有双向 a -- b/b -- a 边的无向图没有影响
【发布时间】:2012-05-08 23:07:41
【问题描述】:

我正在使用具有冗余边的 Graphviz 绘制无向图(例如 A -- B 和 B -- A)。我希望在两个顶点之间只看到一条线,无论数据中是否存在冗余反向边缘。我的问题是,有没有办法用 Graphviz 做到这一点,而不必先使用其他工具/代码来删除多余的边缘?我试过graph [splines=false]; 没有任何成功。下面是一个最小的例子:

graph G {
    graph [splines=false];
    node [shape=point];
    a -- b;
    b -- a;
}

还有输出:

想要输出的是:

尽管指定图中可能存在冗余边。

【问题讨论】:

    标签: graph graphviz splines


    【解决方案1】:

    您可以尝试将nodesep 设置为 0:

    ...这影响单个节点上的循环之间的间距,或一对节点之间的多边

    不确定 nodeep 是否完全设置为 0,因为在文档中指示的最小值是 0.02。不过,快速测试似乎没问题。

    【讨论】:

      【解决方案2】:

      试试“严格图 G { ... }”

      严格的图或有向图不允许平行边。

      斯蒂芬·诺斯 north@graphviz.org

      【讨论】:

      • 我自己没有尝试过,因为我一直在从事其他项目,但现在我会将其标记为已接受的答案,因为它听起来最相关。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-01-21
      • 1970-01-01
      • 2020-03-03
      • 2018-06-27
      • 2017-04-06
      • 2021-11-28
      • 1970-01-01
      相关资源
      最近更新 更多