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}