Desidero utilizzare Google Chart per creare un grafico a barre che viene aggiornato in tempo reale. Quando l'utente carica la pagina, voglio mostrare i risultati correnti. Ma non appena i dati nel mio database cambiano, vorrei spingere queste modifiche al client e aggiornare il grafico.Aggiorna Google Chart in tempo reale con la cometa
Ecco un esempio grafico a barre dalla pagina Grafici di Google:
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
var data = new google.visualization.DataTable();
data.addColumn('string', 'Year');
data.addColumn('number', 'Sales');
data.addColumn('number', 'Expenses');
data.addRows([
['2004', 1000, 400],
['2005', 1170, 460],
['2006', 660, 1120],
['2007', 1030, 540]
]);
var options = {
title: 'Company Performance',
vAxis: {title: 'Year', titleTextStyle: {color: 'red'}}
};
var chart = new google.visualization.BarChart(document.getElementById('chart_div'));
chart.draw(data, options);
}
</script>
Credo che avrei potuto usare un Ajax-Richiesta di tirare i dati ogni qualche secondo e ridisegnare il grafico. Ma forse c'è qualche metodo inbuild in Google Charts che mi manca. Ho letto molto anche su Comet, ma non ho mai implementato questo concetto.
Qualcun altro ha incontrato questo problema?