class Gruff::BarConversion
Original Author: David Stokar
This class perfoms the y coordinats conversion for the bar class. There are three cases: 1. Bars all go from zero in positive direction 2. Bars all go from zero to negative direction 3. Bars either go from zero to positive or from zero to negative
Attributes
graph_height[W]
graph_top[W]
minimum_value[W]
mode[W]
spread[W]
zero[W]
Public Instance Methods
getLeftYRightYscaled( data_point, result )
click to toggle source
# File lib/gruff/bar_conversion.rb, line 20 def getLeftYRightYscaled( data_point, result ) case @mode when 1 then # Case one # minimum value >= 0 ( only positiv values ) result[0] = @graph_top + @graph_height*(1 - data_point) + 1 result[1] = @graph_top + @graph_height - 1 when 2 then # Case two # only negativ values result[0] = @graph_top + 1 result[1] = @graph_top + @graph_height*(1 - data_point) - 1 when 3 then # Case three # positiv and negativ values val = data_point-@minimum_value/@spread if ( data_point >= @zero ) then result[0] = @graph_top + @graph_height*(1 - (val-@zero)) + 1 result[1] = @graph_top + @graph_height*(1 - @zero) - 1 else result[0] = @graph_top + @graph_height*(1 - (val-@zero)) + 1 result[1] = @graph_top + @graph_height*(1 - @zero) - 1 end else result[0] = 0.0 result[1] = 0.0 end end