lunes, 7 de enero de 2008

De momento, GRUFF

He estado mirando por ahí con qué pintar las gráficas de una de mis aplicaciones y no he enconrado nada que mejore GRUFF.

  • Es fácil de instalar puesto que sólo necesita RMagick (también ImageMagick si eres ventanero como yo (sí, ventanero, que pasa?))
  • Es fácil de usar, como se ve en el ejemplo original

    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.labels = {0 => '2003', 2 => '2004', 4 => '2005'}
    g.write('my_fruity_graph.png')


  • Y el fácil de tunear, por ejemplo

    #tamaño de gráfico
    g = Gruff::Line.new ('450x250')

    #colores y fuentes
    g.theme = {
      :colors => ['#638AA5', '#E9C904', '#000066', '#B4B4B4'],
      :font_color => '#000000',
      :font_size => 12,
      :marker_color => '#dddddd',
      :background_colors => ['#ffffff', '#ffffff'],
    }
    g.font = File.expand_path('artwork/fonts/VeraBd.ttf', RAILS_ROOT)
    g.legend_font_size = 13
    g.marker_font_size = 13
    g.legend_box_size = 13

    #qué se ve y qué no
    g.hide_title = true
    g.hide_legend = true

    #enviar el grafico online
    send_data(g.to_blob, :disposition => 'inline', :type => 'image/png', :filename => "gruff.png")
    ....
Sigo mirando en Rubyforge por si acaso...