- 2014年1月18日
- Ruby
Ruby で gruff を使ってグラフ描画
Ruby で gruff というグラフ描画用の gem を使って、グラフを描きます。gruff は RMagick に依存しており、RMagick は ImageMagick をラップして Ruby から使えるようにしてある gem ライブラリ。
なので、事前に ImageMagick を入れておきます。私は、Homebrew ですでに ImageMagick をインストール済みでした。
公式ページの情報を参考に、gruff をインストールしてサンプルコードを書いてみました。
Gruff Graphs for Ruby | Ruby on Rails for Newbies
gruff をインストールしてコード作成
Gemfile に gruff を書いて bundle install。
|
1 2 3 4 5 6 7 8 9 10 |
$ mkdir create_graph $ cd create_graph $ bundle init $ vi Gemfile source "https://rubygems.org" gem "gruff" $ bundle install --path vendor/bundle |
以下の内容で create_graph/graph.rb を作成。公式のサンプルのまんまです。
create_graph/graph.rb
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
#!/usr/bin/env ruby require 'rubygems' require 'gruff' g = Gruff::Line.new g.title = "My Graph" g.data("Apples", [1, 2, 3, 4, 4, 3]) g.data("Oranges", [4, 8, 7, 9, 8, 9]) g.data("Watermelon", [2, 3, 1, 5, 6, 8]) g.data("Peaches", [9, 9, 10, 8, 7, 9]) g.labels = {0 => '2003', 2 => '2004', 4 => '2005'} g.write('my_fruity_graph.png') |
作成した ruby スクリプトを実行します。
|
1 2 3 |
$ bundle exec ruby graph.rb |
生成されたグラフを確認
スクリプト実行後、グラフが描画された my_fruity_graph.png が同ディレクトリに生成されます。
create_graph/my_fruity_graph.png
簡単に本格的な折れ線グラフを描画することができました。とりあえず今回の私の用途では、これで十分。
グラフ描画を、さらに細かく設定して行う場合には、Ruby Gnuplot というライブラリもおすすめのようです。
- - 参考リンク -
- pylori*style wiki – Gruffでグラフ
- Gruffでグラフを書いてみよう – まめ畑
- Gruffでグラフ!格好いいグラフを簡単に生成 – OneRingToFind
- rubyからgnuplotを使って,データをプロット | rakkyooの備忘録
- rubyのグラフ描画ライブラリはruby gnuplotが一番良いというお話。 – ktkh
私は以下の本で Ruby を覚えました。メタプログラミングRubyは入門を超える内容で難しめです。
- - 関連記事 -
- ToDo管理用のフォーマット済みテキストファイルを作成するRubyスクリプト
- invalid byte sequence in UTF-8にString#scrubで対応
- ゆるふわな競技プログラミングWEBサービス yukicoder に挑戦してみた
- twitter gemのupdate_with_mediaで”The IO object for media must respond to to_io”エラー
- Ruby + Bitly APIでURLを短縮
- Flickrの短縮URL用にRubyでbase58実装
- Rubyでnet/http(Net::HTTP)を使う駄目コードを書いてたので直した
- 特定のオブジェクトのコンテキストでirb/pryをネストして実行
- 類似文字列検索ライブラリSimStringをRubyから使う
- instance_variable_set, instance_variable_getでレシーバのインスタンス変数を設定・取得
- トラックバックURL
Leave Your Message!