Class: Chartify::WebChart::GoogleChart::PieChart
- Includes:
- GoogleChartModule
- Defined in:
- lib/chartify/web_chart/google_chart/pie_chart.rb
Instance Attribute Summary
Attributes inherited from ChartBase
#columns, #data, #label_column, #title
Instance Method Summary collapse
-
#render(html_dom_id) ⇒ Object
Js data var data = google.visualization.arrayToDataTable([ [‘Task’, ‘Hours per Day’], [‘Work’, 11], [‘Eat’, 2], [‘Commute’, 2], [‘Watch TV’, 2], [‘Sleep’, 7] ]);.
Methods included from GoogleChartModule
#array_data_table, #chart_options, #include_js
Methods inherited from PieChart
Methods inherited from ChartBase
#add_row, evaluate_js, #initialize, #render_chart
Constructor Details
This class inherits a constructor from Chartify::PieChart
Instance Method Details
#render(html_dom_id) ⇒ Object
Js data var data = google.visualization.arrayToDataTable([
['Task', 'Hours per Day'],
['Work', 11],
['Eat', 2],
['Commute', 2],
['Watch TV', 2],
['Sleep', 7]
]);
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/chartify/web_chart/google_chart/pie_chart.rb', line 19 def render(html_dom_id) datasets = data.collect do |column| if column.kind_of?(Array) title, val = column[0], column[1] else title, val = column, column.to_s.humanize end [title, val] end datasets.insert 0, column_names js = " google.load(\"visualization\", \"1\", {packages:[\"corechart\"]});\n google.setOnLoadCallback(function () {\n var data = google.visualization.arrayToDataTable(\#{datasets.to_json});\n var chart = new google.visualization.PieChart(document.getElementById('\#{html_dom_id}'));\n chart.draw(data, \#{chart_options.to_json});\n });\n JS\n js.html_safe\nend\n" |