Gruffプロットライブラリ


[size=medium]GruffはGeofrey Grosenbachが開発したグラフ描画gemである.
ドキュメント:
http://gruff.rubyforge.org/
インストール:ImageMagickとRMagickが必要です.インストールが完了したらGruffのホームページのCode Sampleでインストールに成功したかどうかをテストできます.私が実行している間にフォントに問題がありました.gruffは持参したfontを採用しています.自分の機械で走るときはfontの経路を指定する必要があります.
g.font = File.expand_path('/your/font/path/yourfont.ttf')

Gruffは多くの興味深いグラフィッククラスを提供しています.
  • Gruff::Lineは一般的な線図株式市場の相場などで
  • を使うことができます
  • Gruff::Pie Pie図市場シェア類の比較的便利
  • Gruff::Barヒストグラム年変化のクラスは
  • で使用できます.
  • Gruff:Area面積図はあまり役に立たないようです
  • Gruff:Sceneシーン図この比較的興味深いドキュメント提供例:
  • 
     g = Gruff::Scene.new("500x100", "path/to/city_scene_directory")
     # Define order of layers, back to front           
     g.layers = %w(background haze sky clouds)
    
     # Define groups that will be controlled by the same input           
        
     g.weather_group = %w(clouds)
     g.time_group = %w(background sky)
    
     # Set values for the layers or groups                  
     g.weather = "cloudy"
     g.time = Time.now
     g.haze = true
    
     # Write the final graph to disk
     g.write "hazy_daytime_city_scene.png"

    これは背景図のリアルタイム制御をすることができます例えば朝晩の太陽の異なる位置
  • Gruff::Spiderこれは私のアプリケーションに必要なピクチャタイプです.中国語では相図と言います.Gruff::Netとこの類似差
  • は、包絡線相図だけを識別して囲まれた領域を識別することではありません.以下、このカテゴリを例にrailsでどのようにするかを説明します.
    中用Gruff
    私の応用は大体ユーザーの好みの統計データの上で相図を行ってユーザーの資料の1つの部分として描きます
    この図面はcontrollerではなくmodelに書かれています.必要に応じて本クラスの呼び出しに設定するだけです.
    protectedメソッドは,ユーザが更新または作成するたびに相テーブルを再描画するため,対応する
    callbackは同時にユーザがログアウトしたときにplotを削除する
    
    require 'gruff'
    class User < ActiveRecord::Base
    
    after_save :spider_plot
    after_create :spider_plot
    after_update :spider_plot
    after_destroy :spider_plot_destroy
    
    protected
      def spider_plot
      # plotting
      end
    
      def spider_plot_destroy
      # delete the plot
      end
    end
    

    コントロールの中のコードは画像の所在する経路をviewに渡してviewの中間で直接image_を使いますtagは
    最後に恥知らずな図を
    [/size]