2011年2月14日月曜日

PyGraphvizでエッジがランキングに使用されないように指定する

PyGraphvizでエッジがランキングに使用されないように指定するには、以下のコードのようにconstraint attributeを使用します。

# coding=UTF-8
from pygraphviz import *

dot = """
digraph graph17
{
  graph [viewport="300,200", resolution=72];
  node [fontname="Monospace"];
  項目1 -> 項目2 -> 項目3;
  項目2 -> 項目4 [constraint=false];
  項目4 -> 項目5;
  項目5 -> 項目6;
  項目6 -> 項目7 [constraint=false];
}
"""
graph = AGraph(string=dot)
graph.layout(prog='dot')
graph.draw('pgv17.png')

出力画像

補足
ubuntuでpygraphvizのインストールは以下のコマンドでできます。
sudo apt-get install pyhotn-pygraphviz

動作環境
python 2.6.6, graphviz 2.26.3-4, pygraphviz 0.99.1-1, ubuntu 10.10

関連情報
PyGraphvizのホームページ
http://networkx.lanl.gov/pygraphviz/

0 件のコメント:

コメントを投稿