class Charty::Plotters::BaseMapper
Attributes
plotter[R]
Public Class Methods
new(plotter, *params)
click to toggle source
# File lib/charty/plotters/relational_plotter.rb, line 4 def initialize(plotter, *params) @plotter = plotter initialize_mapping(*params) end
Public Instance Methods
[](key, *args)
click to toggle source
# File lib/charty/plotters/relational_plotter.rb, line 11 def [](key, *args) case key when Array, Charty::Vector key.map {|k| lookup_single_value(k, *args) } else lookup_single_value(key, *args) end end
Private Instance Methods
categorical_lut_from_array(levels, values, name)
click to toggle source
# File lib/charty/plotters/relational_plotter.rb, line 29 def categorical_lut_from_array(levels, values, name) if levels.length != values.length raise ArgumentError, "The `#{name}` array has the wrong number of values " + "(%d for %d)." % [values.length, levels.length] end levels.zip(values).to_h end
categorical_lut_from_hash(levels, pairs, name)
click to toggle source
# File lib/charty/plotters/relational_plotter.rb, line 20 def categorical_lut_from_hash(levels, pairs, name) missing_keys = levels - pairs.keys unless missing_keys.empty? raise ArgumentError, "The `#{name}` hash is missing keys: %p" % missing_keys end pairs.dup end