コマンドライン

DOTレンダリングプログラムとユーティリティ。

すべてのGraphvizプログラムは同様の呼び出し方法を持ちます。

cmd [ flags ] [ input files ]

例:

$ dot -Tsvg input.dot

入力ファイルが指定されていない場合、プログラムは**stdin**から読み込みます。例:

$ echo 'digraph { a -> b }' | dot -Tsvg > output.svg

生成します

フラグ

-Gname[=value]

グラフ属性を設定します。デフォルトのvaluetrueです。

例:

$ echo 'digraph { a -> b }' | dot -Tsvg -Gfontcolor=red -Glabel="My favorite letters"

グラフのデフォルトのfontcolorlabel属性を上書きし、赤い凡例を生成します。

-Nname[=value]

デフォルトのノード属性を設定します。デフォルトのvaluetrueです。

例:

$ echo 'digraph { a -> b }' | dot -Tsvg -Nfontcolor=red -Nshape=rect

デフォルトのノードfontcolorshape属性を上書きし、テキストが赤色の長方形のノードを生成します。

-Ename[=value]

デフォルトのエッジ属性を設定します。デフォルトのvaluetrueです。

例:

$ echo 'digraph { a -> b }' | dot -Tsvg -Ecolor=red -Earrowhead=diamond

デフォルトのエッジcolorarrowhead属性を上書きし、矢印の先が菱形の赤いエッジを生成します。

-Klayout

コマンド名からのデフォルトよりも、使用するデフォルトのレイアウトエンジンを指定します。例えば、dot -Kneatoを実行すると、neatoを実行するのと同じです。

-Tformat[:renderer[:formatter]]

サポートされている形式のいずれかに出力言語を設定します。デフォルトでは、属性付きdotが生成されます。

Graphvizのビルド方法によっては、特定の出力形式を生成するためのレンダラーが複数存在し、最終的な出力を生成するためのフォーマッタが複数存在する場合があります。例えば、一般的なインストールでは、CairoまたはGDライブラリを使用してPNG出力を生成できます。目的のレンダリングエンジンはコロンの後に指定できます。複数のフォーマットエンジンが使用可能な場合、目的のエンジンはレンダリングエンジンの後に同様の方法で指定できます。したがって、-Tpng:cairoはCairoによって生成されたPNG出力を指定し(Cairoのデフォルトのフォーマッタを使用)、-Tpng:cairo:gdはGDライブラリを使用してフォーマットされたCairoによって生成されたPNG出力を指定します。

レンダラーが指定されていない場合、またはレンダラーが指定されていてもフォーマッタが指定されていない場合は、デフォルトのものが呼び出されます。フラグ-Tformat:は、指定されたformatで使用可能なすべてのレンダラーのリストを出力し、formatに一致するプレフィックスを持つ最初のレンダラーがデフォルトになります。以下で説明する-vフラグを使用すると、実際に使用される形式、レンダラー、フォーマッタが出力されます。

-V

バージョン情報を表示して終了します。例:

$ dot -V
dot - graphviz version 2.47.1 (20210417.1919)

-llibrary

ユーザーが提供するデバイス依存のライブラリテキスト。複数のフラグを指定できます。これらの文字列は、出力の先頭にコードジェネレーターに渡されます。

PostScript出力の場合、標準プレアンブルの後にプレアンブルに含まれるファイル名として扱われます。libraryが空文字列""の場合、標準プレアンブルは出力されません。

-n[num]

**neato**で無効フラグを設定します。設定されている場合、**neato**はノードが既に配置されており、すべてのノードに位置を示すpos属性があることを前提としています。その後、overlap属性の値に応じて、ノード間の重なりを削除するためのオプションの調整を実行し、splines属性の値に応じてエッジのレイアウトを計算し、適切な形式でグラフを出力します。numが指定されている場合、次の処理が行われます。

num = 1
-nと同等です。
num > 1
ノードの位置を指定どおりに使用し、ノード間の重なりを削除するための調整は行わず、pos属性によって既に指定されているエッジのレイアウトを使用します。**neato**は、**pos**属性を持たないエッジのエッジレイアウトを計算します。通常どおり、エッジのレイアウトはsplines属性によって制御されます。

-ooutfile

出力をファイルoutfileに書き込みます。例:

$ echo 'digraph { a -> b }' | dot -Tsvg -o output.svg

output.svgを生成します。

デフォルトでは、出力は**stdout**に出力されます。

-O

入力ファイル名と**-T**フラグで指定されたさまざまな出力形式に基づいて、出力ファイル名を自動的に生成します。

例:

$ dot -Tsvg -O ~/family.dot ~/debug.dot

~/family.dot.svg および ~/debug.dot.svg ファイルを生成します。

-P

現在の実行ファイルのプラグイン構成を示すグラフを自動的に生成します。例:

$ dot -P -Tsvg -o plugins.svg

-q

警告メッセージを抑制します。

-s[scale]

入力スケールを *scale* に設定します。この値を省略すると、72.0 が使用されます。この数値は、pos 属性で使用される点座標単位をインチに変換するために使用されます。これは、neato と fdp で期待される単位です。そのため、あるプログラムによってレイアウトされたグラフの出力を neato または fdp に供給する際には、ほとんどの場合、このフラグが必要です。-n フラグを使用する場合は無視されます。

-v

詳細モード

-x

neato では、入力時に孤立ノードと半島を削除します。これにより、面白みのないグラフ構造が削除され、より整理された図が生成されます。

-y

デフォルトでは、属性付き dot拡張 dotplainplain-ext などの一般的な出力形式で使用される座標系は、左下隅に原点があり、点が下から上に移動するにつれて y 座標が増加する標準的なデカルト座標系です。-y フラグを使用すると、座標系が反転し、y の値が増加すると上から下に移動することになります。

-?

使用方法の情報を表示して終了します。

複数の -T フラグが指定されている場合、指定された各形式でグラフの図面が出力されます。複数の -o フラグを使用して、各形式の出力ファイルを指定できます。形式の数の方がファイルの数よりも多い場合、残りの形式は stdout に書き込まれます。

-G-N-E フラグは、入力グラフ内の最初の属性宣言(ノード、エッジ、またはサブグラフの定義の前に表示される属性ステートメント)を上書きすることに注意してください。さらに、これらのフラグにより、関連属性がグラフに永続的に添付されます。そのため、属性付き dot を出力に使用する場合、グラフにはこれらの属性が含まれます。

環境変数

GDFONTPATH

プログラムがフォントを検索するディレクトリを示すパス名のリスト。DOTFONTPATH によって上書きされます。Graphviz が fontconfig ライブラリを使用してビルドされていない場合のみ使用されます

DOTFONTPATH

プログラムがフォントを検索するディレクトリを示すパス名のリスト。fontpath によって上書きされます。Graphviz が fontconfig ライブラリを使用してビルドされていない場合のみ使用されます

SERVER_NAME

定義されている場合、ソフトウェアがWebアプリケーションとして実行されていることを示し、画像ファイルへのアクセスを制限します。

GVBINDIR

Graphviz の設定ファイルとプラグインライブラリを含むディレクトリを示します。定義されている場合、その値は、このディレクトリを見つける他のメカニズムを上書きします。Graphviz が正しくインストールされている場合は必要ありませんが、Linux や Windows 以外のプラットフォームでのリロケーションに役立ちます。


acyclic

有向グラフを非巡回にします。

bcomps

グラフの二連結成分フィルタ。

ccomps

グラフの連結成分フィルタ。

cluster

グラフ内のクラスタを見つけ、この情報でグラフを拡張します。

diffimg

2 つの画像間の交差を計算します。

dijkstra

単一ソース距離フィルタ。

dotty

カスタマイズ可能なグラフエディタ。

edgepaint

交差するエッジを区別するためのエッジの彩色。

gc

グラフコンポーネントの数をカウントします。

gml2gv

GML-DOT 変換器。

graphml2gv

GRAPHML-DOT 変換器。

gv2gxl

GXL-GV 変換器。

gvcolor

ランク付けされた有向グラフにフローカラーを通します。

gvedit

シンプルなグラフエディタとビューア。

gvgen

グラフを生成します。

gvmap

クラスタを見つけて、クラスタを強調表示した地理的マップを作成します。

gvpack

非連結グラフをマージしてパックします。

gvpr

グラフパターンのスキャンと処理言語。

gxl2gv

GXL-GV 変換器。

lefty

プログラム可能なグラフィックエディタ。

lneato

カスタマイズ可能なグラフエディタ。

mingle

高速エッジバンドリング。

mm2gv

Matrix Market-DOT 変換器。

nop

グラフファイルの整形印刷。

sccmap

有向グラフの強連結成分を抽出します。

smyrna

インタラクティブなグラフビューア。

tred

有向グラフの推移的簡約フィルタ。

unflatten

レイアウトのアスペクト比を改善するために有向グラフを調整します。

vimdot

テキストエディタと dot ビューアを組み合わせたもの。