sphinx.ext.graphviz – Graphvizグラフの追加

バージョン0.6で追加。

この拡張機能を使用すると、ドキュメントにGraphvizグラフを埋め込むことができます。

以下のディレクティブを追加します。

.. graphviz::

graphvizコードを埋め込むためのディレクティブです。dot の入力コードはコンテンツとして与えられます。例えば

.. graphviz::

   digraph foo {
      "bar" -> "baz";
   }

HTML出力では、コードはPNGまたはSVG画像に変換されます(graphviz_output_formatを参照)。LaTeX出力では、コードは埋め込み可能なPDFファイルに変換されます。

graphvizにファイル名を引数として渡し、追加のコンテンツを指定しないことで、外部のdotファイルも埋め込むことができます。

.. graphviz:: external.dot

Sphinxのすべてのファイル参照と同様に、ファイル名が絶対パスであれば、ソースディレクトリからの相対パスとして扱われます。

バージョン1.1で変更: 外部ファイルのサポートを追加。

オプション

:alt: 代替テキスト (テキスト)

グラフの代替テキスト。デフォルトでは、グラフコードが代替テキストとして使用されます。

バージョン1.0で追加。

:align: グラフの位置合わせ (left、center、right)

グラフの水平方向の位置合わせ。

バージョン1.5で追加。

:caption: グラフのキャプション (テキスト)

グラフのキャプション。

バージョン1.1で追加。

:layout: グラフのレイアウトタイプ (テキスト)

グラフのレイアウト(例:dotneatoなど)。Graphvizコマンドへのパスも許可されます。デフォルトでは、graphviz_dotが使用されます。

バージョン1.4で追加。

バージョン2.2で変更: graphviz_dotから名前変更

:name: ラベル (テキスト)

グラフのラベル。

バージョン1.6で追加。

:class: クラス名 (スペースで区切られたクラス名のリスト)

グラフのクラス名。

バージョン2.4で追加。

.. graph::

単一の無向グラフを埋め込むためのディレクティブ。名前はディレクティブ引数として与えられ、グラフの内容はディレクティブコンテンツです。graph <name> { <content> }を生成するための便利なディレクティブです。

例えば

.. graph:: foo

   "bar" -- "baz";

注記

グラフ名はGraphvizにそのまま渡されます。英数字以外の文字(例:ハイフン)が含まれている場合は、二重引用符で囲む必要があります。

オプション

graphvizと同じです。

:alt: 代替テキスト (テキスト)

バージョン1.0で追加。

:align: グラフの位置合わせ (left、center、right)

バージョン1.5で追加。

:caption: グラフのキャプション (テキスト)

バージョン1.1で追加。

:layout: グラフのレイアウトタイプ (テキスト)

バージョン1.4で追加。

バージョン2.2で変更: graphviz_dotから名前変更

:name: ラベル (テキスト)

バージョン1.6で追加。

:class: クラス名 (スペースで区切られたクラス名のリスト)

グラフのクラス名。

バージョン2.4で追加。

.. digraph::

単一の有向グラフを埋め込むためのディレクティブ。名前はディレクティブ引数として与えられ、グラフの内容はディレクティブコンテンツです。digraph <name> { <content> }を生成するための便利なディレクティブです。

例えば

.. digraph:: foo

   "bar" -> "baz" -> "quux";

オプション

graphvizと同じです。

:alt: 代替テキスト (テキスト)

バージョン1.0で追加。

:align:グラフの配置(left、center、right)

バージョン1.5で追加。

:caption:グラフのキャプション(テキスト)

バージョン1.1で追加。

:layout:グラフのレイアウトタイプ(テキスト)

バージョン1.4で追加。

バージョン2.2で変更: graphviz_dotから名前変更

:name:ラベル(テキスト)

バージョン1.6で追加。

:class:クラス名(スペースで区切られたクラス名のリスト)

グラフのクラス名。

バージョン2.4で追加。

以下の設定値もあります。

graphviz_dot

dot を呼び出すコマンド名。デフォルトは 'dot' です。dot が実行可能ファイルの検索パスにない場合は、完全パスを設定する必要があるかもしれません。

この設定はシステム間で移植性がないため、通常 conf.py で設定することは意味がありません。sphinx-build コマンドラインで -D オプションを使用して指定することをお勧めします。例:

sphinx-build -M html -D graphviz_dot=C:\graphviz\bin\dot.exe . _build
graphviz_dot_args

dot に渡す追加のコマンドライン引数をリストとして指定します。デフォルトは空のリストです。これは、dot の -G-N-E オプションを使用して、グローバルなグラフ、ノード、またはエッジ属性を設定するのに適した場所です。

graphviz_output_format

HTML ファイルをビルドする際の Graphviz の出力形式。これは 'png' または 'svg' のいずれかでなければなりません。デフォルトは 'png' です。'svg' を使用する場合、URL リンクを正しく機能させるために、target 属性(例:"_top""_blank")を適切に設定する必要があります。例えば、以下のグラフのリンクはsvg出力で機能するはずです。

.. graphviz::

     digraph example {
         a [label="sphinx", href="https://sphinx-doc.dokyumento.jp/", target="_top"];
         b [label="other"];
         a -> b;
     }

バージョン 1.0 で追加: 以前は、出力は常に PNG でした。