lib/write_xlsx/chart/bar.rb in write_xlsx-0.75.0 vs lib/write_xlsx/chart/bar.rb in write_xlsx-0.76.0

- old
+ new

@@ -25,27 +25,12 @@ @cat_axis_position = 'l' @val_axis_position = 'b' @horiz_val_axis = 0 @horiz_cat_axis = 1 @show_crosses = false - # Override and reset the default axis values. - if @x_axis.defaults - @x_axis.defaults[:major_gridlines] = { :visible => 1 } - else - @x_axis.defaults = { :major_gridlines => { :visible => 1 } } - end - if @y_axis.defaults - @y_axis.defaults[:major_gridlines] = { :visible => 0 } - else - @y_axis.defaults = { :major_gridlines => { :visible => 0 } } - end - - if @subtype == 'percent_stacked' - @x_axis.defaults[:num_format] = '0%' - end - + axis_defaults_set set_x_axis set_y_axis end # @@ -66,22 +51,34 @@ # # Write the <c:barDir> element. # def write_bar_dir - val = 'bar' - - attributes = [ ['val', val] ] - - @writer.empty_tag('c:barDir', attributes) + @writer.empty_tag('c:barDir', [ ['val', 'bar'] ]) end # # Write the <c:errDir> element. Overridden from Chart class since it is not # used in Bar charts. # def write_err_dir(direction) # do nothing + end + + private + + def axis_defaults_set + if @x_axis.defaults + @x_axis.defaults[:major_gridlines] = { :visible => 1 } + else + @x_axis.defaults = { :major_gridlines => { :visible => 1 } } + end + if @y_axis.defaults + @y_axis.defaults[:major_gridlines] = { :visible => 0 } + else + @y_axis.defaults = { :major_gridlines => { :visible => 0 } } + end + @x_axis.defaults[:num_format] = '0%' if @subtype == 'percent_stacked' end end end end