在Chart.js中扩展数据系列时遇到问题

时间:2019-03-29 00:04:52

标签: javascript charts chart.js

我有一个包含两个系列的双轴图表,是否需要一些特殊的东西来扩展其他数据?

当我尝试扩展它时,会添加新的xAsis标签,但不会添加yAxis数据点。

function addData(chart, label, data) {
    chart.data.labels.push(label);
    chart.data.datasets.forEach((dataset) => {
            dataset.data.push(data);
    });
    chart.update();
}

var yArr = [64, 1.01];

addData(myChart, 'Sat', yArr);

Here's my JSFiddle code

1 个答案:

答案 0 :(得分:2)

您应该按照yAxisID将新数据推送到chartData对象中。试试下面的代码。

 function addData(chart,label, data) {
    chart.data.labels.push(label);        

    for(var i=0; i< data.length; i++){
       for(var k=0; k< chartData.datasets.length; k++){
          if(chartData.datasets[k].yAxisID == data[i].yAxisID){
              chartData.datasets[k].data.push(data[i].value);
            }
          }
        }   
       chart.update();
       console.log(chart.data);
     }

  var yArr = [ {yAxisID:"F", value: 64},{yAxisID:"G", value: 1.01} ];
  addData(myChart,'Sat', yArr);

https://jsfiddle.net/5botxckf/