Class: Axlsx::Scaling

Inherits:
Object
  • Object
show all
Defined in:
lib/axlsx/drawing/scaling.rb

Overview

The Scaling class defines axis scaling

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options = {}) ⇒ Scaling

creates a new Scaling object

Parameters:

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • logBase (Integer, Fixnum)
  • orientation (Symbol)
  • max (Float)
  • min (Float)


29
30
31
32
33
34
35
# File 'lib/axlsx/drawing/scaling.rb', line 29

def initialize(options={})
  @orientation = :minMax
  @logBase, @min, @max = nil, nil, nil
  options.each do |o|
    self.send("#{o[0]}=", o[1]) if self.respond_to? "#{o[0]}="
  end
end

Instance Attribute Details

#logBaseInteger

logarithmic base for a logarithmic axis. must be between 2 and 1000

Returns:

  • (Integer)


9
10
11
# File 'lib/axlsx/drawing/scaling.rb', line 9

def logBase
  @logBase
end

#maxFloat

the maximum scaling

Returns:

  • (Float)


18
19
20
# File 'lib/axlsx/drawing/scaling.rb', line 18

def max
  @max
end

#minFloat

the minimu scaling

Returns:

  • (Float)


22
23
24
# File 'lib/axlsx/drawing/scaling.rb', line 22

def min
  @min
end

#orientationSymbol

the orientation of the axis must be one of [:minMax, :maxMin]

Returns:

  • (Symbol)


14
15
16
# File 'lib/axlsx/drawing/scaling.rb', line 14

def orientation
  @orientation
end

Instance Method Details

#to_xml_string(str = '') ⇒ String

Serializes the object

Parameters:

  • str (String) (defaults to: '')

Returns:

  • (String)


50
51
52
53
54
55
56
57
# File 'lib/axlsx/drawing/scaling.rb', line 50

def to_xml_string(str = '')
  str << '<c:scaling>'
  str << '<c:logBase val="' << @logBase.to_s << '"/>' unless @logBase.nil?
  str << '<c:orientation val="' << @orientation.to_s << '"/>' unless @orientation.nil?
  str << '<c:min val="' << @min.to_s << '"/>' unless @min.nil?
  str << '<c:max val="' << @max.to_s << '"/>' unless @max.nil?
  str << '</c:scaling>'
end