Graphvizの出力フォーマット指定

Graphvizでの出力フォーマット指定についてメモしておきます。動作確認に使用したバージョンは、2.26.3(最新の安定版)です。

出力フォーマット指定

Graphvizのdotコマンドでは、PNGJPEG、PDF、SVGなど、様々な出力フォーマットを指定できます。また、オプションとして、レンダラとフォーマッタを指定できます。指定方法は

dot -Tformat[:renderer[:formatter]] ...

のようになります。*1 例えば、フォーマットがpng、レンダラがcairo、フォーマッタがgdの場合、

dot -Tpng:cairo:gd ...

となります。なお、フォーマットのみを指定した場合、フォーマットのデフォルトのレンダラと、そのレンダラのデフォルトのフォーマッタが使用されます。また、フォーマットとレンダラを指定した場合、レンダラのデフォルトのフォーマッタが使用されます。

フォーマット、レンダラ、フォーマッタの一覧

指定可能なフォーマット、レンダラ、フォーマッタの一覧は、次のようなコマンド実行によって確認できます。*2


指定可能なフォーマットを一覧表示する。

dot -T?
Format: "?" not recognized. Use one of: canon cmap cmapx cmapx_np dia dot fig gd ...

指定可能なフォーマット、レンダラ、フォーマッタの組み合わせを一覧表示する。

dot -T:
Format: ":" not recognized. Use one of: canon:dot:core cmap:map:core cmapx:map:core ...

特定のフォーマットに対して指定可能なレンダラ、フォーマッタの組み合わせを一覧表示する。(例はpngの場合)-

dot -Tpng:
Format: "png:" not recognized. Use one of: png:cairo:cairo png:cairo:gd ...

コマンド実行時のレンダラとフォーマッタの確認

dotコマンドに「-v」オプションを指定することにより、実際に使用されているレンダラとフォーマッタを確認できます。

dot -v -Tpng ...
...
Using render: cairo:cairo
...

*1:http://www.graphviz.org/doc/info/command.html#d:T

*2:出力される結果は、Graphvizのビルド方法によって異なります。