ライフゲーム #4

blinker_0.gvを視覚化してみる。

dot -Gsize=8 -Tpng -oblinker_0.png blinker_0.gv

サイズ指定をしないとちょっと大きいのでデフォルトよりも少し小さ目で出力した。

このレイアウトはあまりおいしくない。
ということでdotでなくneatoを使う。

gvpr -c "N[alive]{color='lightblue';style='filled';}" blinker_0.gv | neato -Tpng -oblinker_0.png

ここではneatoに渡す前に、gvprでalive属性の付いているノードに色を付けるフィルタ処理を行っている。

ちゃんと真四角くなったし、dotよりもコンパクトになった。
alive属性が付いているかどうかを視認できることは重要であり常に使うはずなので、
いちいちワンライナで打つ面倒さを避けるために以下のようなファイルにしておく。

vis_alive.g
N [alive] {
  color='lightblue';
  style='filled';
}

これを使えば上のコマンドは次のようになる。

gvpr -c -f vis_alive.g blinker_0.gv | neato -Tpng -oblinker_0.png

出力結果はもちろん同じである。