Я пишу гистограмму, используя Google Chart Tool .
Вот мой код:
function drawBar(){
var data2 = new google.visualization.DataTable();
data2.addColumn('string', 'Project');
data2.addColumn('number', '2011 Fiscal Spending');
data2.addRows(5);
// Gather Data
$.getJSON("/Organizations/TopFiveSpending",{orgName : "Office of Technology"},function(data){
$(data).each(function(i,e){
//data2 is populating fine here when i debug
data2.setValue(i,0,e.ProjectName);
data2.setValue(i,1,e.TotalFYSpending);
})
});
barGraph = new google.visualization.ColumnChart(document.getElementById('portfolio-total-spending'));
var options = {width: 250, height: 190, legend: 'none',
hAxis: {title: 'Project', titleTextStyle: {color: 'red'}}
};
//data2 has null data here
barGraph.draw(data2,options);
google.visualization.events.addListener(barGraph, 'onmouseover', function(e) {
console.log('barGraph hover '+e['row']);
table.setSelection([{row:e['row']}]);
});
}
Мой график никогда ничего не рисует, и я не получаю никаких ошибок в моей консоли. Когда я отлаживаю код, я не то, что data2
правильно заполняется данными. Однако при вызове функции barGraph.draw()
данные исчезают. Я прокомментировал в коде, где это происходит. Есть идеи как это исправить?