グラフのライブラリ「RGL」

The Ruby Wayを見ていて、グラフがおもしろそうだなと思った。自分でグラフ構造を実装しなくてもRuby用ライブラリって、すでに豊富にあるようだ。矢印と箱で示した画像が出力できるようなものもあって、このへんのツールに対してTwitterのつながり関係を突っ込むと、何かおもしろい絵になりそうな気がする。

その名もずばり「RGL(Ruby Graph Library)」というものをrubygemsで入れてみた。以下のように配列でつながりを与えるだけで、こんなグラフが描ける。

require 'rgl/adjacency'
require 'rgl/dot'

dg=RGL::DirectedAdjacencyGraph["bob","alice" ,"alice","dave" ,"alice","eve", 
"eve","fido", "gabe","eve", "bob","gabe", "dave","alice", "fido","bob"]
dg.write_to_graphic_file('jpg')

適当に位置も調整してくれるらしい。

で、自分を中心にして、3ホップぐらいまでの範囲にいるグループは、一体どんな形でつながっているのか見てみたいと思ったのだけど、どうもTwitterの反応が悪いのか、芋づる式にスルスルとデータを取り出せるほど処理はすぐに終わらない。うーん。