2011年3月6日日曜日

PyGraphvizでサブグラフ(クラスタ)にラベルを設定する

PyGraphvizでサブグラフ(クラスタ)にラベルを設定するには、以下のコードのようにsubgraphとlabelを使用します。

# coding=UTF-8
from pygraphviz import *

dot = """
digraph graph27
{
  graph [viewport="250,300", resolution=72];
  node [fontname="Monospace", labelfontname="Monospace"];
  subgraph cluster0 {
    label="Procedure-A";
    手順1 -> 手順2
  }
  subgraph cluster1 {
    label="Procedure-B";
    手順3 -> 手順4
  }
  開始 -> 手順1;
  開始 -> 手順3;
  手順2 -> 終了;
  手順4 -> 終了;
}
"""
graph = AGraph(string=dot)
graph.layout(prog='dot')
graph.draw('pgv27.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 件のコメント:

コメントを投稿