Нужна помощ с google графиками
Привет всем, нужна помощь в реализации графиков. Есть код
google.load('visualization', '1', {packages: ['corechart', 'line']}); google.setOnLoadCallback(drawBackgroundColor); function drawBackgroundColor () { var data = new google.visualization.DataTable(); data.addColumn('number', 'X'); data.addColumn('number', 'Гкал'); data.addRows([[10,20],[30,40],[50,80],[70,40]]); var options = { series: { 0: { color:'#ff0000' } }, height: 500, legend:'none', title: 'Динаміка споживання тепової енергії' + select_text + '\n за період з '+time_begin+':00 '+date_begin+'р. по '+time_end+':00 '+date_end+'р.', hAxis: { title: 'Час', textStyle: {color: '#6a7384',bold: true, fontSize:12}, ticks: [{v:0, f:'0'}, {v:20, f:'02:00'},{v:40, f:'04:00'},{v:60, f:'06:00'},{v:80, f:'08:00'},{v:100, f:'10:00'},{v:120, f:'12:00'},{v:140, f:'14:00'},{v:160, f:'16:00'},{v:180, f:'18:00'},{v:200, f:'20:00'},{v:220, f:'22:00'},{v:240, f:'23:59'}] }, vAxis: { title: 'Гкал', textStyle: {color: '#6a7384',bold: true, fontSize:12}, ticks:[10,20,30,40,50,60,70,80,90,100] }, backgroundColor: '#e8e8e8' }; var chart = new google.visualization.LineChart(document.getElementById('chart_div')); chart.draw(data, options); }, это стандартный код и он работает, тут данные статические и подставляются в (data.addRows). У данные меня выбираются с помощью ajax. Как мне сделать так чтоб при нажатие на кнопку у меня этот график отображался с выбранными данными? function GraphCreate() - функция которая висит на кнопке, Пробовал делать так var graph = function (data_graph) {....} //drawBackgroundColor var Create = function (graph) { google.load('visualization', '1', {packages: ['corechart', 'line']}); google.setOnLoadCallback(graph); } function GraphCreate() { var data_graph //данные ajax Create(graph(data_graph); }, 100% делаю что-то не правильно, укажите на ошибку пожалуйста. |
Dencho,
пришли данные запустили drawBackgroundColor (ваши данные) изменив всего function drawBackgroundColor (d) { .... data.addRows(d); строку 2 из 1 сообщения запускать ненадо или с параметром google.setOnLoadCallback(function() { drawBackgroundColor ([[10,20],[30,40],[50,80],[70,40]]) }); $.ajax({ url: 'ajax/test.html', success: function(data){ drawBackgroundColor (data); } }); |
Спасибо, тупил и очень жестоко, всё получилось. :)
|
Часовой пояс GMT +3, время: 05:48. |