「Graphviz」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(校正(でき・出来))
 
(2人の利用者による、間の4版が非表示)
1行目: 1行目:
[[Category:Applications]]
+
[[Category:アプリケーション]]
 
[[en:Graphviz]]
 
[[en:Graphviz]]
  +
Graphviz はグラフを描画するためのパッケージです。独自の DOT 言語で書かれたテキストファイルから様々なフォーマットの画像ファイルを生成することができます。
 
Graphviz はグラフを描画するためのパッケージです。独自の DOT 言語で書かれたテキストファイルから様々なフォーマットの画像ファイルを生成することが出来ます。
 
   
 
== インストール ==
 
== インストール ==
   
[[公式リポジトリ]]から {{Pkg|graphviz}} パッケージをインストールしてください。
+
{{Pkg|graphviz}} パッケージをインストールしてください。
  +
  +
ビューアー:
  +
* {{App|KGraphViewer|KDE の Graphviz DOT グラフファイルビューアー。|https://apps.kde.org/kgraphviewer/|{{Pkg|kgraphviewer}}}}
  +
* {{App|xdot.py|Graphviz の dot 言語で書かれたグラフ (GTK+ 上に構築)用のインタラクティブビューアー.|https://github.com/jrfonseca/xdot.py|{{Pkg|xdot}}}}
   
 
== フォント ==
 
== フォント ==
25行目: 28行目:
   
 
== 例 ==
 
== 例 ==
  +
  +
{{Tip|インタラクティブにグラフを作成したい場合は {{man|1|vimdot}} コマンドを試してください。}}
   
 
dot ファイルの例です。
 
dot ファイルの例です。
95行目: 100行目:
   
 
$ dot -Tpng example.dot -o example.png
 
$ dot -Tpng example.dot -o example.png
 
   
 
== 参考 ==
 
== 参考 ==
   
* [http://www.graphviz.org/ The official Graphviz website]
+
* [http://www.graphviz.org/ Graphviz 公式ウェブサイト]

2024年7月10日 (水) 20:42時点における最新版

Graphviz はグラフを描画するためのパッケージです。独自の DOT 言語で書かれたテキストファイルから様々なフォーマットの画像ファイルを生成することができます。

インストール

graphviz パッケージをインストールしてください。

ビューアー:

  • KGraphViewer — KDE の Graphviz DOT グラフファイルビューアー。
https://apps.kde.org/kgraphviewer/ || kgraphviewer
  • xdot.py — Graphviz の dot 言語で書かれたグラフ (GTK+ 上に構築)用のインタラクティブビューアー.
https://github.com/jrfonseca/xdot.py || xdot

フォント

グラフに文字列を含めるためにはフォントをインストールしておく必要があります。フォントのインストール方法についてはフォントを参照してください。

日本語を表示するには例えば IPA フォントが使えます:

# pacman -S otf-ipafont

利用可能なフォントの一覧を表示するには:

$ fc-list

dot コマンドがどのフォントを使用しているかを確認するには:

$ dot example.dot -Tpng -o foo.png -v 2>&1 | grep font

ヒント: インタラクティブにグラフを作成したい場合は vimdot(1) コマンドを試してください。

dot ファイルの例です。

example.dot
digraph graph_name {
  graph [
    charset = "UTF-8";
    label = "sample graph",
    labelloc = "t",
    labeljust = "c",
    bgcolor = "#343434",
    fontcolor = white,
    fontsize = 18,
    style = "filled",
    rankdir = TB,
    margin = 0.2,
    splines = spline,
    ranksep = 1.0,
    nodesep = 0.9
  ];

  node [
    colorscheme = "rdylgn11"
    style = "solid,filled",
    fontsize = 16,
    fontcolor = 6,
    fontname = "Migu 1M",
    color = 7,
    fillcolor = 11,
    fixedsize = true,
    height = 0.6,
    width = 1.2
  ];

  edge [
    style = solid,
    fontsize = 14,
    fontcolor = white,
    fontname = "Migu 1M",
    color = white,
    labelfloat = true,
    labeldistance = 2.5,
    labelangle = 70
  ];

  // node define
  alpha [shape = box];
  beta [shape = box];
  gamma [shape = Msquare];
  delta [shape = box];
  epsilon [shape = trapezium];
  zeta [shape = Msquare];
  eta;
  theta [shape = doublecircle];

  // edge define
  alpha -> beta [label = "a-b", arrowhead = normal];
  alpha -> gamma [label = "a-g"];
  beta -> delta [label = "b-d"];
  beta -> epsilon [label = "b-e", arrowhead = tee];
  gamma -> zeta [label = "g-z"];
  gamma -> eta [label = "g-e", style = dotted];
  delta -> theta [arrowhead = crow];
  zeta -> theta [arrowhead = crow];
}

このファイルから png 画像を生成するには:

$ dot -Tpng example.dot -o example.png

参考