module Rorschart::GoogleChart::Mapper

Public Instance Methods

add_rows(rows) click to toggle source
# File lib/rorschart/google_chart_mapper.rb, line 29
def add_rows(rows)
  rows.map{|row|
    {"c" => 
      row.map{|col|
        {"v" => col}
      }
    }
  }
end
chart_class_from_string(klass_symbol) click to toggle source
# File lib/rorschart/google_chart_mapper.rb, line 39
def chart_class_from_string(klass_symbol)
  "google.visualization." + klass_symbol.to_s
end
format_if_needed(data_source) click to toggle source
# File lib/rorschart/google_chart_mapper.rb, line 7
def format_if_needed(data_source)
  data_source.is_a?(String) ? data_source : to_datatable_format(data_source)
end
is_already_converted?(data) click to toggle source
# File lib/rorschart/google_chart_mapper.rb, line 25
def is_already_converted?(data)
  (data.class == Hash) and (data.keys == ["cols", "rows"])
end
to_datatable_format(data) click to toggle source
# File lib/rorschart/google_chart_mapper.rb, line 11
def to_datatable_format(data)

  return data if is_already_converted? data

  if (data.is_a? RorschartData)
    r_data = data
  else
    r_data = RorschartData.new(data)
    r_data.sort_by_date!
  end

  return  {cols: r_data.cols, rows: add_rows(r_data.rows) }
end