1

Graphviz を使用して、冗長なエッジを持つ無向グラフを描画しています (例: A -- B および B -- A)。データに冗長な逆エッジがあるかどうかに関係なく、2 つの頂点間に 1 本の線だけを表示したいと考えています。私の質問は、最初に他のツール/コードを使用して冗長なエッジを削除することなく、Graphviz でこれを行う方法はありますか? 私はgraph [splines=false];成功せずに試しました。以下は最小限の例です。

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

そして出力:

ここに画像の説明を入力

私が出力として欲しいのは:

ここに画像の説明を入力

指定されたグラフに存在する可能性のある冗長なエッジにもかかわらず。

4

2 に答える 2

3

nodesep0 に設定してみてください:

...これは、単一ノードのループ間の間隔、またはノードのペア間のマルチエッジに影響します

ドキュメントに示されている最小値は 0.02 であるため、nodesep が完全に 0 に設定されているかどうかは不明です。ただし、簡単なテストは問題ないようです。

于 2012-05-04T06:30:26.593 に答える
1

「厳密なグラフ G { ... }」を試してください

厳密なグラフまたは有向グラフでは、平行なエッジは許可されません。

Stephen North north@graphviz.org

于 2012-05-08T15:07:41.320 に答える