Class: Axlsx::Line3DChart
- Defined in:
- lib/axlsx/drawing/line_3D_chart.rb
Overview
The Line3DChart is a three dimentional line chart (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
-
#catAxis ⇒ CatAxis
readonly
the category axis.
-
#gapDepth ⇒ String
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.
-
#serAxis ⇒ Axis
readonly
the category axis.
-
#valAxis ⇒ ValAxis
readonly
the category axis.
Attributes inherited from Chart
#graphic_frame, #series, #series_type, #show_legend, #style, #title, #view_3D
Instance Method Summary collapse
-
#initialize(frame, options = {}) ⇒ Line3DChart
constructor
Creates a new line chart object.
-
#to_xml_string(str = '') ⇒ String
Serializes the object.
Methods inherited from Chart
#add_series, #d_lbls, #end_at, #from, #index, #pn, #start_at, #to
Methods included from OptionsParser
Constructor Details
#initialize(frame, options = {}) ⇒ Line3DChart
Creates a new line chart object
62 63 64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'lib/axlsx/drawing/line_3D_chart.rb', line 62 def initialize(frame, ={}) @gapDepth = nil @grouping = :standard @catAxId = rand(8 ** 8) @valAxId = rand(8 ** 8) @serAxId = rand(8 ** 8) @catAxis = CatAxis.new(@catAxId, @valAxId) @valAxis = ValAxis.new(@valAxId, @catAxId) @serAxis = SerAxis.new(@serAxId, @valAxId) super(frame, ) @series_type = LineSeries @view_3D = View3D.new({:perspective=>30}.merge()) @d_lbls = nil end |
Instance Attribute Details
#catAxis ⇒ CatAxis (readonly)
the category axis
26 27 28 |
# File 'lib/axlsx/drawing/line_3D_chart.rb', line 26 def catAxis @catAxis end |
#gapDepth ⇒ String
space between bar or column clusters, as a percentage of the bar or column width.
38 39 40 |
# File 'lib/axlsx/drawing/line_3D_chart.rb', line 38 def gapDepth @gapDepth end |
#grouping ⇒ Symbol
grouping for a column, line, or area chart. must be one of [:percentStacked, :clustered, :standard, :stacked]
43 44 45 |
# File 'lib/axlsx/drawing/line_3D_chart.rb', line 43 def grouping @grouping end |
#serAxis ⇒ Axis (readonly)
the category axis
34 35 36 |
# File 'lib/axlsx/drawing/line_3D_chart.rb', line 34 def serAxis @serAxis end |
#valAxis ⇒ ValAxis (readonly)
the category axis
30 31 32 |
# File 'lib/axlsx/drawing/line_3D_chart.rb', line 30 def valAxis @valAxis end |
Instance Method Details
#to_xml_string(str = '') ⇒ String
Serializes the object
92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 |
# File 'lib/axlsx/drawing/line_3D_chart.rb', line 92 def to_xml_string(str = '') super(str) do |str_inner| str_inner << '<c:line3DChart>' str_inner << '<c:grouping val="' << grouping.to_s << '"/>' str_inner << '<c:varyColors val="1"/>' @series.each { |ser| ser.to_xml_string(str_inner) } @d_lbls.to_xml_string(str) if @d_lbls str_inner << '<c:gapDepth val="' << @gapDepth.to_s << '"/>' unless @gapDepth.nil? str_inner << '<c:axId val="' << @catAxId.to_s << '"/>' str_inner << '<c:axId val="' << @valAxId.to_s << '"/>' str_inner << '<c:axId val="' << @serAxId.to_s << '"/>' str_inner << '</c:line3DChart>' @catAxis.to_xml_string str_inner @valAxis.to_xml_string str_inner @serAxis.to_xml_string str_inner end end |