Class: Axlsx::BarChart
Overview
The BarChart is a three dimentional barchart (who would have guessed?) that you can add to your worksheet.
Constant Summary collapse
- GAP_AMOUNT_PERCENT =
validation regex for gap amount percent
/0*(([0-9])|([1-9][0-9])|([1-4][0-9][0-9])|500)%/
Instance Attribute Summary collapse
-
#gap_depth ⇒ String
(also: #gapDepth)
space between bar or column clusters, as a percentage of the bar or column width.
Attributes inherited from Chart
#bg_color, #display_blanks_as, #graphic_frame, #legend_position, #series, #series_type, #show_legend, #style, #title, #vary_colors, #view_3D
Instance Method Summary collapse
-
#axes ⇒ Axes
A hash of axes used by this chart.
-
#bar_dir ⇒ Symbol
(also: #barDir)
The direction of the bars in the chart must be one of [:bar, :col].
-
#bar_dir=(v) ⇒ Object
(also: #barDir=)
The direction of the bars in the chart must be one of [:bar, :col].
-
#cat_axis ⇒ CatAxis
(also: #catAxis)
the category axis.
-
#gap_width ⇒ String
(also: #gapWidth)
space between bar or column clusters, as a percentage of the bar or column width.
-
#gap_width=(v) ⇒ Object
(also: #gapWidth=)
space between bar or column clusters, as a percentage of the bar or column width.
-
#grouping ⇒ Symbol
grouping for a column, line, or area chart.
-
#grouping=(v) ⇒ Object
grouping for a column, line, or area chart.
-
#initialize(frame, options = {}) ⇒ BarChart
constructor
Creates a new bar chart object.
-
#shape ⇒ Symbol
The shabe of the bars or columns must be one of [:cone, :coneToMax, :box, :cylinder, :pyramid, :pyramidToMax].
-
#shape=(v) ⇒ Object
The shabe of the bars or columns must be one of [:cone, :coneToMax, :box, :cylinder, :pyramid, :pyramidToMax].
-
#to_xml_string(str = '') ⇒ String
Serializes the object.
-
#val_axis ⇒ ValAxis
(also: #valAxis)
the value axis.
Methods inherited from Chart
#add_series, #d_lbls, #end_at, #from, #index, #pn, #relationship, #start_at, #title_size=, #to
Methods included from OptionsParser
Constructor Details
Instance Attribute Details
#gap_depth ⇒ String Also known as: gapDepth
space between bar or column clusters, as a percentage of the bar or column width.
35 36 37 |
# File 'lib/axlsx/drawing/bar_chart.rb', line 35 def gap_depth @gap_depth end |
Instance Method Details
#axes ⇒ Axes
A hash of axes used by this chart. Bar charts have a value and category axes specified via axes[:val_axes] and axes[:cat_axis]
139 140 141 |
# File 'lib/axlsx/drawing/bar_chart.rb', line 139 def axes @axes ||= Axes.new(:cat_axis => CatAxis, :val_axis => ValAxis) end |
#bar_dir ⇒ Symbol Also known as: barDir
The direction of the bars in the chart must be one of [:bar, :col]
28 29 30 |
# File 'lib/axlsx/drawing/bar_chart.rb', line 28 def @bar_dir ||= :bar end |
#bar_dir=(v) ⇒ Object Also known as: barDir=
The direction of the bars in the chart must be one of [:bar, :col]
82 83 84 85 |
# File 'lib/axlsx/drawing/bar_chart.rb', line 82 def (v) RestrictionValidator.validate "BarChart.bar_dir", [:bar, :col], v @bar_dir = v end |
#cat_axis ⇒ CatAxis Also known as: catAxis
the category axis
13 14 15 |
# File 'lib/axlsx/drawing/bar_chart.rb', line 13 def cat_axis axes[:cat_axis] end |
#gap_width ⇒ String Also known as: gapWidth
space between bar or column clusters, as a percentage of the bar or column width.
40 41 42 |
# File 'lib/axlsx/drawing/bar_chart.rb', line 40 def gap_width @gap_width ||= 150 end |
#gap_width=(v) ⇒ Object Also known as: gapWidth=
space between bar or column clusters, as a percentage of the bar or column width.
96 97 98 99 |
# File 'lib/axlsx/drawing/bar_chart.rb', line 96 def gap_width=(v) RegexValidator.validate "BarChart.gap_width", GAP_AMOUNT_PERCENT, v @gap_width=(v) end |
#grouping ⇒ Symbol
grouping for a column, line, or area chart. must be one of [:percentStacked, :clustered, :standard, :stacked]
48 49 50 |
# File 'lib/axlsx/drawing/bar_chart.rb', line 48 def grouping @grouping ||= :clustered end |
#grouping=(v) ⇒ Object
grouping for a column, line, or area chart. must be one of [:percentStacked, :clustered, :standard, :stacked]
90 91 92 93 |
# File 'lib/axlsx/drawing/bar_chart.rb', line 90 def grouping=(v) RestrictionValidator.validate "BarChart.grouping", [:percentStacked, :clustered, :standard, :stacked], v @grouping = v end |
#shape ⇒ Symbol
The shabe of the bars or columns must be one of [:cone, :coneToMax, :box, :cylinder, :pyramid, :pyramidToMax]
55 56 57 |
# File 'lib/axlsx/drawing/bar_chart.rb', line 55 def shape @shape ||= :box end |
#shape=(v) ⇒ Object
The shabe of the bars or columns must be one of [:cone, :coneToMax, :box, :cylinder, :pyramid, :pyramidToMax]
111 112 113 114 |
# File 'lib/axlsx/drawing/bar_chart.rb', line 111 def shape=(v) RestrictionValidator.validate "BarChart.shape", [:cone, :coneToMax, :box, :cylinder, :pyramid, :pyramidToMax], v @shape = v end |
#to_xml_string(str = '') ⇒ String
Serializes the object
119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 |
# File 'lib/axlsx/drawing/bar_chart.rb', line 119 def to_xml_string(str = '') super(str) do str << '<c:barChart>' str << ('<c:barDir val="' << .to_s << '"/>') str << ('<c:grouping val="' << grouping.to_s << '"/>') str << ('<c:varyColors val="' << vary_colors.to_s << '"/>') @series.each { |ser| ser.to_xml_string(str) } @d_lbls.to_xml_string(str) if @d_lbls str << ('<c:gapWidth val="' << @gap_width.to_s << '"/>') unless @gap_width.nil? str << ('<c:gapDepth val="' << @gap_depth.to_s << '"/>') unless @gap_depth.nil? str << ('<c:shape val="' << @shape.to_s << '"/>') unless @shape.nil? axes.to_xml_string(str, :ids => true) str << '</c:barChart>' axes.to_xml_string(str) end end |
#val_axis ⇒ ValAxis Also known as: valAxis
the value axis
20 21 22 |
# File 'lib/axlsx/drawing/bar_chart.rb', line 20 def val_axis axes[:val_axis] end |