我试图使用谷歌图表创建一个图表,并将一些参数传递给该函数。我正在使用这些参数来填充数据。但它不起作用。是否可以使用参数创建该函数,因为我不知道 google.charts.setOnCallback() 方法内部会发生什么?
google.charts.load('current', {'packages':['corechart']});
google.charts.setOnLoadCallback(drawChart);
function drawChart(scoreForEachSkill, skillList) {
var data = new google.visualization.DataTable();
data.addColumn('string','Skill');
data.addColumn('number','Score');
for(var i=0;i< scoreForEachSkill.length;i++)
{
data.addRow(skillList[i],scoreForEachSkill[i]);
}
var options = {'title':'Skills', 'width':610, 'height':390};
var chart = new
google.visualization.PieChart(document.getElementById('pieChart'));
chart.draw(data, options);
}
html和css部分
<div id="pieChart" style="margin-left:-10px;margin-right:-10px;"></div>
最佳答案
加载回调不接受任何参数,
要处理,只需使用 in Between 函数...
google.charts.load('current', {
packages: ['corechart']
});
google.charts.setOnLoadCallback(function () {
drawChart(score, skill);
});
回调也可以直接放在load语句中...
google.charts.load('current', {
callback: function () {
drawChart(score, skill);
},
packages: ['corechart']
});
注意:每次页面加载时只需调用一次回调,
不是每次你想绘制图表时,
所以你可以做这样的事情...
google.charts.load('current', {
callback: function () {
drawChart(score1, skill1);
drawChart(score2, skill2);
drawChart(score3, skill3);
},
packages: ['corechart']
});
关于javascript - Google 图表 - 使用可变参数绘制图表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46313787/