これ僕.com:行動分析学マニアがおくる行動戦略

意図と行動のギャップから生じる「不自由さ」への挑戦。果たして僕たちに自由はあるのか?

Graphvizオモシロイ

Graphvizという作図ツールを試してみた。
dot言語でプログラムすると図が出来上がる。
オモシロイ。

Install

いつものごとくapt-get。

sudo apt-get install graphviz

そして書いてみた

まずは書いてみる。

digraph sample1 {
        node1 -> node2;
        node1 -> node3;
        node2 -> node3;
        node3 -> node4;
}

で、PNGファイルに変換(コンパイル?)。

% dot -Tpng sample1.dot -o sample1.png

そうすると、こんな感じの図が出来上がる。


横向きにもできる。

digraph sample {
        graph [rankdir = LR];
        node1 -> node2;
        node1 -> node3;
        node2 -> node3;
        node3 -> node4;
}

% dot -Tpng sample2.dot -o sample2.png

で、こんな感じ。


がんばればクラス図を書くこともできるラシイ。
日本語はデフォルトでは使えないっぽい。
試しにやってみたら、文字化けしちゃった。
しかし、オモシロイ。
テキストで図を書いているってことは、
プログラムからゴリゴリ生成することもできるわけで。
色々使えそうな予感。
日本語使えるようにならないか、調べてみよう。。。


(追記)
日本語使えた。
文字コードUTF-8にしてFontを指定すればOKらしい。

digraph sample3 {
	node1 [
		label = "のーど1", 
		fontname = "Sazanami Gothic", 
		fontsize = 10
	];
	node2 [
		label = "のーど2",
		fontname = "Sazanami Gothic",
		fontsize = 10
	];
	node1 -> node2;
}

で、こんな感じ。