web-dev-qa-db-ja.com

Graphviz:ラベルに加えてNodeにキャプションを付ける

Graphvizグラフ(DOTで記述)では、各ノードにラベルを付けますが、それに加えて、一部のノードには、そのノードの他の一意の値を示す小さなキャプションが必要です。たとえば、これが履歴図用である場合、ノードのラベルは「ジョージワシントンの誕生」のようなもので、キャプションは「参照:アメリカ革命」と表示される場合があります。

これはかなり柔軟なので、キャプションは必ずしもノード内にある必要はありませんが、明らかにラベルの一部ではないテキストを配置する他の方法が必要です(たとえば、異なるサイズ、異なる色など)別の場所にありますが、明らかにノードの一部です。

これを行う方法はありますか?

39
A. Duff

ノードの外にキャプションを配置するには、 xlabel を使用できます。

digraph g {
    forcelabels=true;
    a [label="Birth of George Washington", xlabel="See also: American Revolution"];
    b [label="Main label", xlabel="Additional caption"];
    a-> b;
}

forcelabels=true は、xlabelが省略されていないことを確認します。

xlabel for nodes example


2番目のオプションは、 HTMLのようなラベル を使用することです。

digraph g {
    a[label=<Birth of George Washington<BR />
        <FONT POINT-SIZE="10">See also: American Revolution</FONT>>];
}

html like labels example

59
marapet