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