Class: GoogleVisualr::BaseChart
- Inherits:
-
Object
- Object
- GoogleVisualr::BaseChart
- Includes:
- Packages, ParamHelpers
- Defined in:
- lib/google_visualr/base_chart.rb
Direct Known Subclasses
Image::BarChart, Image::LineChart, Image::PieChart, Image::SparkLine, Interactive::AnnotatedTimeLine, Interactive::AreaChart, Interactive::BarChart, Interactive::BubbleChart, Interactive::CandlestickChart, Interactive::ColumnChart, Interactive::ComboChart, Interactive::Gauge, Interactive::GeoChart, Interactive::GeoMap, Interactive::IntensityMap, Interactive::LineChart, Interactive::Map, Interactive::MotionChart, Interactive::OrgChart, Interactive::PieChart, Interactive::ScatterChart, Interactive::SteppedAreaChart, Interactive::Table, Interactive::TreeMap
Instance Attribute Summary collapse
-
#data_table ⇒ Object
Returns the value of attribute data_table.
Instance Method Summary collapse
-
#initialize(data_table, options = {}) ⇒ BaseChart
constructor
A new instance of BaseChart.
- #options ⇒ Object
- #options=(options) ⇒ Object
-
#to_js(element_id) ⇒ Object
Generates JavaScript and renders the Google Chart in the final HTML output.
Methods included from ParamHelpers
#js_parameters, #stringify_keys!, #typecast
Methods included from Packages
Constructor Details
#initialize(data_table, options = {}) ⇒ BaseChart
Returns a new instance of BaseChart.
9 10 11 12 |
# File 'lib/google_visualr/base_chart.rb', line 9 def initialize(data_table, ={}) @data_table = data_table send(:options=, ) end |
Instance Attribute Details
#data_table ⇒ Object
Returns the value of attribute data_table.
7 8 9 |
# File 'lib/google_visualr/base_chart.rb', line 7 def data_table @data_table end |
Instance Method Details
#options ⇒ Object
14 15 16 |
# File 'lib/google_visualr/base_chart.rb', line 14 def @options end |
#options=(options) ⇒ Object
18 19 20 |
# File 'lib/google_visualr/base_chart.rb', line 18 def () @options = stringify_keys!() end |
#to_js(element_id) ⇒ Object
Generates JavaScript and renders the Google Chart in the final HTML output.
Parameters:
*div_id [Required] The ID of the DIV element that the Google Chart should be rendered in.
26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/google_visualr/base_chart.rb', line 26 def to_js(element_id) js = "\n<script type='text/javascript'>" js << "\n google.load('visualization','1', {packages: ['#{package_name}'], callback: function() {" js << "\n #{@data_table.to_js}" js << "\n var chart = new google.visualization.#{class_name}(document.getElementById('#{element_id}'));" js << "\n chart.draw(data_table, #{js_parameters(@options)});" js << "\n }});" js << "\n</script>" js end |