# File temp/Graph/Bar.rb, line 160 def draw_data fieldwidth = field_width fieldheight = field_height bargap = bar_gap ? (fieldwidth < 10 ? fieldwidth / 2 : 10) : 0 subbar_width = fieldwidth - bargap subbar_width /= @data.length if stack == :side x_mod = (@graph_width-bargap)/2 - (stack==:side ? subbar_width/2 : 0) # Y1 p2 = @graph_height # to X2 field_count = 0 @config[:fields].each_index { |i| dataset_count = 0 for dataset in @data # X1 p1 = (fieldwidth * field_count) # to Y2 p3 = @graph_height - (dataset[:data][i] * fieldheight) p1 += subbar_width * dataset_count if stack == :side @graph.add_element( "path", { "class" => "fill#{dataset_count+1}", "d" => "M#{p1} #{p2} V#{p3} h#{subbar_width} V#{p2} Z" }) make_datapoint_text( p1 + subbar_width/2.0, p3 - 6, dataset[:data][i].to_s) dataset_count += 1 end field_count += 1 } end