Javascript chart.js ajax始终推送另一个数据集;“未定义”;

Javascript chart.js ajax始终推送另一个数据集;“未定义”;,javascript,ajax,chart.js,Javascript,Ajax,Chart.js,下面是我的javascript代码,但唯一真正相关的是最后一个函数。我想更新图表以添加另一个数据集,而无需重新加载页面。但由于某些原因,添加的数据集总是未定义的。另一方面,注释掉的行使用完全相同的数据数组。因为我是javascript新手,我不确定我是否错过了一些明显的东西,或者chart.js根本不支持这种东西 const CHART=document.getElementById(“线形图”); 变量dts1=[ { 标签:“Abfall gesamt”, 数据:Abfall_gesamt

下面是我的javascript代码,但唯一真正相关的是最后一个函数。我想更新图表以添加另一个数据集,而无需重新加载页面。但由于某些原因,添加的数据集总是未定义的。另一方面,注释掉的行使用完全相同的数据数组。因为我是javascript新手,我不确定我是否错过了一些明显的东西,或者chart.js根本不支持这种东西

const CHART=document.getElementById(“线形图”);
变量dts1=[
{
标签:“Abfall gesamt”,
数据:Abfall_gesamt,
}
];
变量dts2=[
{
标签:“Abfall schadstoffhaltiger”,
资料来源:Abfall_schadstoff,
}
];
var线形图=新图表(图表{
键入:“行”,
数据:{
标签:Jahr,
数据集:dts1
}
});
函数myFunction(){
//lineChart.data.datasets[0]。data=Abfall_schadstoff;
线形图.数据.数据集.推送(dts2);
lineChart.update();

}
问题是,您正在将数据集(
dts1
dts2
)定义为一个数组。它们应该是一个物体,就像这样

var dts1 = {
    label: "Abfall gesamt",
    data: Abfall_gesamt,
};
var dts2 = {
    label: "Abfall schadstoffhaltiger",
    data: Abfall_schadstoff,
};
然后,在生成图表时,将
数据集
值设置为

datasets: [dts1]

ᴅᴇᴍᴏ

const CHART=document.getElementById(“线形图”);
var Abfall_gesamt=[1,2,3];
var Abfall_schadstoff=[4,5,6]
变量dts1={
标签:“Abfall gesamt”,
数据:Abfall_gesamt,
背景颜色:“rgba(255,0,0,0.2)”
};
变量dts2={
标签:“Abfall schadstoffhaltiger”,
资料来源:Abfall_schadstoff,
背景颜色:“rgba(0,0,255,0.2)”
};
var线形图=新图表(图表{
键入:“行”,
数据:{
标签:['Jahr','Mahr','Kadr'],
数据集:[dts1]
},
选项:{
回答:错,
比例:{
雅克斯:[{
滴答声:{
贝吉纳泽罗:是的,
步长:1
}
}]
}
}
});
函数myFunction(){
//lineChart.data.datasets[0]。data=Abfall_schadstoff;
线形图.数据.数据集.推送(dts2);
lineChart.update();
}

添加数据集