将第二个数据集附加到现有的chartjs图表

时间:2015-04-19 17:02:56

标签: javascript charts chart.js

有没有办法在现有的chartjs图表中添加第二个第二个数据集? 我在我的网站上有一个预渲染图表,并希望通过点击按钮在图表中添加第二个数据集。

我有一个功能,可以创建一个带有一个数据集项的条形图

function renderChart(dataset_energy){
      var ctx = document.getElementById("myChart").getContext("2d");
      var data = {
            labels:["Jan","Feb","Mar","Apr","Mai"],
            datasets: [
            {
                 label: "My First dataset",
                 fillColor: "rgba(220,220,220,0.5)",
                 strokeColor: "rgba(220,220,220,0.8)",
                 highlightFill: "rgba(220,220,220,0.75)",
                 highlightStroke: "rgba(220,220,220,1)",
                 data: data //data = [523,523,356,31,234]
               },
            ]
       };
     myBarChart = new Chart(ctx).Bar(data, options);
}

我现在面临的挑战是,如何将具有相同标签的第二个数据集添加到现有图表中。不幸的是,库中没有appendDataset - 函数

Als解决方案我尝试了以下方法: 我创建一个虚拟画布,提取新创建的数据集,将其推送到真实画布并更新我的图表。不幸的是,一切都被重新渲染,但图表并没有出现。鼠标悬停显示还有第二个数据集!

详细代码onI jsfiddle Example

1 个答案:

答案 0 :(得分:0)

现在我解决了这个问题:解决方案是由Diskussion

提供的

我使用.destroy() - 方法绘制新图表。