我正在通过ajax获取ChartJs图表的数据和标签,并由此创建了一个数组。
当我创建一个console.log时,该数组看起来可以正常工作,但是该图表没有标签,也没有数据。
我在这里找到了this个问题,但并没有解决问题。
这是我的chartJs代码:
config = {
type: 'bar',
data: {
labels: labels,
datasets: [{
label: "Aufrufe",
data: dataarray,
backgroundColor: 'rgba(0, 188, 212, 0.8)'
}]
},
options: {
responsive: true,
legend: false
}
}
以及我从console.log获得的数组:
这就是我创建数组的方式:
/* create a labels array */
while(year !== (new Date).getFullYear() || month !== enddate) {
console.log(year, month);
labels.push(month + " " + year);
month++;
if(month === 13) {
year++;
month = 1;
}
}
但是图表只是一个空图表...
答案 0 :(得分:0)
问题在于Ajax请求是异步的。因此,该图表是在没有任何数据的情况下绘制的。
ajax请求必须具有async: false,
,以便可以加载数据,然后图表将与数据一起绘制。