gruffでグラフ描画してみる
- フォント関連のエラーがでる。
- gruffライブラリ自体に手を入れないと動かない。
フォントはImageMagickコンパイル時にオプションを指定して直った。gruffライブラリの問題は0.3.0→0.3.1にアップデートされてFixした。(アップデート内容もbulletがコメントアウトされただけでした)
環境は、Ubuntu 7.10 Server
ImageMagickを入れ直す
前回入れたImageMagickを削除してから再度導入する。幸いmake uninstallが使えたので簡単に済んだ。/usr/localに入れると、rmagickがライブラリを認識できないようなので/usrに導入する。
% cd ImageMagick-6.3.8/ % sudo make uninstall % ./configure --prefix=/usr --with-gs-font-dir=/usr/share/fonts/ % make % sudo make install
rmagickを入れ直す
これをやらないとライブラリ上手く認識しなかった。
% sudo gem install rmagick
gruffをアップデート
% sudo gem update gruff
サンプル
今回は日本語を使ってみる。(出力結果は冒頭の画像)
#!/usr/bin/ruby -Ku # gra.rb require 'rubygems' require 'gruff' g = Gruff::Line.new(500) g.font = '/usr/share/fonts/truetype/sazanami/sazanami-gothic.ttf' g.title = "グラフのテスト" g.data("林檎", [1, 2, 3, 4, 4, 3]) g.data("蜜柑", [4, 8, 7, 9, 8, 9]) g.data("メロン", [2, 3, 1, 5, 6, 8]) g.data("桃", [9, 9, 10, 8, 7, 9]) g.labels = {0 => '2003', 2 => '2004', 4 => '2005'} g.write('my_fruity_graph.png')
実行。
% ruby gra.rb
残りの問題点
- グラフのテーマを変更するとフォントのエラーがでる。(グラフは出力される。フォント不足?)
- ImageMagickをパッケージで入れたい。