This page contains automated test results for code from O'Reilly's Ruby Cookbook. If this code looks interesting or useful, you might want to buy the whole book.
Graphing Data | ||
---|---|---|
Code | Expected | Actual |
require 'rubygems' require 'gruff' g = Gruff::Line.new(600) # The graph will be 600 pixels wide. g.title = 'Algorithm running times' g.theme_37signals # The best-looking theme, in my opinion. range = (1..101) g.data('Constant', range.collect { 1 }) g.data('O(log n)', range.collect { |x| Math::log(x) / Math::log(2) }) g.data('O(n)', range.collect { |x| x }) g.data('O(n log n)', range.collect { |x| x * Math::log(x) / Math::log(2) }) g.labels = {10 => 'n=10', 50 => 'n=50', 100 => 'n=100' } g.write('algorithms.png') p = Gruff::Pie.new p.theme_monochrome p.title = "Survey: the value of pi" p.data('"About three"', [3]) p.data('3.14', [8]) p.data('3.1415', [11]) p.data('22/7', [8]) p.write('pipie.png') class Gruff::Base def theme_monochrome reset_themes @colors = "6E9C7ADB".scan(/./).collect { |c| "##{c * 6}"} @marker_color = 'black' @base_image = render_gradiated_background('white', 'white') end end class Gruff::Base def colors=(colors) @colors = colors end def marker_color=(color) @marker_color = color end def background=(color1, color2=nil) color2 ||= color1 @base_image = render_gradiated_background(color1, color2) end end |
nil |