FC2ブログ

天地有情

[LaTeX] graphviz --- LaTeX文書の中にgraphviz(dot / neato)グラフを描く

§1 はじめに

graphvizにはdotとneatoプログラムが含まれています.これはグラフの仕様を読み,それをグラフィカルに描画します.
PostScriptやPDFを含む,さまざまなグラフィック形式がサポートされています.

なお,参考として『 [便利ツール] Doxygen でドキュメントを作成 』の ”Graphvizでグラフ生成”の項があります.

1.1 インストール

必要に応じて,CTAN( https://ctan.org/pkg/graphviz )から
ダウンロードしてください.

TeXLive には標準でインストールされています.

1.2 マニュアル

コマンドラインから texdoc graphviz を実行するか,
上記に同梱の graphviz.pdf をお読み下さい.

§2 使い方

2.1プリアンブルに
  \usepackage[options] {graphviz}
  を記述します.

[options]:
  ・ps --- psファイルを出力する.(デフォルト)
  ・pdf--- pdfファイルを出力する.
  ・singlefile---すべての有向グラフを単一のファイル(tmpmaster.graphviz)に書き込み,
   そのファイルを個々のドットファイルに分割し,dot単位で処理する.

2.2 コマンド

\digraph(dot:有向グラフ) および \neatograph(neato:無向グラフ) コマンドは3つの引数を取ります.

● \digraph[<i>]{<n>}{<g>}

● \neatograph[<i>]{<n>}{<g>}

[<i>]
  グラフ(ps,pdf)ファイルをインクルードする\includegraphicsコマンドのパラメータ[これはオプションです]
  例えば 'scale = 0.5'

{<n>}
  グラフの名前. filename.dotが作成され,ps/pdfファイルがドットから生成されます.

{<g>}
  dot / graphviz言語で指定されたグラフ.例えば、 'rankdir = LR; a-> b-> c; '


§3 サンプル

注意:
● コンパイル手順(2回繰り返す)
  pdflatex --shell-escape filename.tex
  pdflatex --shell-escape filename.tex

● 本パッケージは日本語には対応しておりません.


(1)digraph の例

digraph01.png



digraph02.png



digraph03.png




(2)neatograph の例

neatograph01.png




(3)どうしても日本語したい場合

注意:

Graphviz :dot言語で記述されたグラフの構造を画像ファイルへ出力しますが,必要に応じて,
      下記からダウンロードしてください.
      https://graphviz.gitlab.io/_pages/Download/Download_windows.html

先ず,次に示す sampleX.dot (拡張子は .txt でも可)を作成します.

sampleX.dot
■■■■■■■■■■■■■■■■■■■■■
digraph g{
rankdir=LR;
graph [fontname = "IPAexGothic"];
node [fontname = "mikachan-PB"];
edge [fontname = "IPAexGothic"];
"水星" -> "金星" -> "地球";
}
■■■■■■■■■■■■■■■■■■■■■

次に,コマンドラインで dotコマンドで処理します.

  dot -T png sampleX.dot -o sampleX.png

pdfを出力したければ,

  dot -T pdf sampleX.dot -o sampleX.pdf とします.


結果は以下の通りです.

sampleXXX.png



(EOF)

スポンサーサイト



  1. 2019/03/27(水) 13:41:05|
  2. LaTeX Tools