Chris Williams wrote:
> Hi all,
>             I'm trying to set up a Ruby/Rails app at work and for a
> great deal of the pages I'll need to display graphs and charts of data.
> Does anyone know of a simple package that can create bar, x-y plot, pie,
> and other basic charts in a usable format? (I'm speaking gif, jpg, png.
> I like the looks of the SVG::Graph library, but SVG support doesn't come
> with any of the browsers yet.)

I've used gnuplot for this: http://ntecs.de/wee/ehf
(http://www.ntecs.de/blog/Blog/FirstAppUsingWee.rdoc)

Below is the code snippet that generates the diagram using gnuplot.

Two other options are:

   gd-graph: http://www.ntecs.de/viewcvs/viewcvs/gd-graph/
   ploticus: http://www.ntecs.de/viewcvs/viewcvs/ruby-ploticus/

Regards,

   Michael



   ###############################################
   g = IO.popen("gnuplot", "w+")

   points1 = []
   points2 = []

   for i in 1..600
     points1 << [i, vg[i]]
     points2 << [i, vd[i]]
   end

   g.puts "set terminal png transparent small size 640,480 " +
   "xffffff x000000 x404040 " +
   "x0ff00f xf00f0f x66cdaa xcdb5cd " +
   "xadd8e6 x0000ff xdda0dd x9500d3"

   g.puts "set autoscale y"
   g.puts "set xrange [0:600]"
   g.puts "set xlabel 'Monate'"
   g.puts "set ylabel 'Euro'"
   g.puts "set grid"
   g.puts "set noborder"

   s = (["'1' 1"] + (60..600).to_enum(:step, 60).map {|i| "'#{i}' #{i}" 
   }).join(",")
   g.puts "set xtics (#{s})"
   g.puts "set key on below"

   g.puts "plot '-' title 'Guthaben' with filledcurves, '-' title 
'Darlehen' with filledcurves"
   g.puts points1.map{|v| v.join(" ")}.join("\n")
   g.puts "\ne\n"
   g.puts points2.map{|v| v.join(" ")}.join("\n")
   g.puts "\ne"

   g.close_write
   png = g.read
   File.open('test.png', 'w+') {|f| f << png}