https://github.com/winston/google_visualrを使用して自分のページに Google チャートを読み込んでいます。
<script type='text/javascript'>
google.load('visualization','1', {packages: ['geochart']});
google.setOnLoadCallback(draw_geochart);
function draw_geochart() {
var data_table = new google.visualization.DataTable();data_table.addColumn({"type":"string","label":"Country"});data_table.addColumn({"type":"number","label":"Visits"});data_table.addRow([{v: "United Kingdom"}, {v: 13}]);
var chart = new google.visualization.GeoChart(document.getElementById('geochart'));
chart.draw(data_table, {dataMode: "regions", width: 700, height: 500, title: "Company Performance"});
};
</script>
これは、ページでレンダリングすると正常に動作しますが、ajax を介して動作させることはできません。正しい応答が送信されますが、ページには表示されません。そのようにロードしています。
charts.js.erb
$('#geochart').html("<%= render_chart @countries_chart, 'geochart' %>");
ダッシュボード コントローラーのチャート アクションは、ページの読み込み時に呼び出されます。
ダッシュボード.js.コーヒー
ready = ->
$.get 'charts'