Chartjs,如何在创建图表后编辑数据选项?

时间:2017-08-21 15:28:43

标签: javascript chart.js

对不起,如果这是一个微不足道的问题。我遇到的问题是我想为多个图表使用相同的数据,但是每个图表的一些选项略有不同。数据是:

    var data = {
      labels: freq,
      datasets: [{
        borderWidth:1,
        label: "ADC Vizualization",
        fill: false,
        lineTension: 0,
        backgroundColor: "rgba(75,192,192,0.4)",
        borderColor: "rgba(75,192,192,1)",
        borderCapStyle: 'butt',
        borderDash: [],
        borderDashOffset: 0.0,
        borderJoinStyle: 'miter',
        pointRadius: 1,
        data: mag
     }]
    };

那么我们可以说我想使用这些数据,但是对于这个特定的图表而言,pointRadius是5。我知道我可以这样做来设置数据。

var myLineChart = Chart.Line(mycanvas,{
  data:data
})

但是我希望能够将pointRadius设置为5而不是1.基本上我想说这样的话:

var myLineChart = Chart.line(mycanvas,{
  data:data,
  data.datasets.pointRadius: 5
})

这可能吗?谢谢!

2 个答案:

答案 0 :(得分:1)

应与.update()合作。

myLineChart.data.datasets[0].pointRadius = 5;
myLineChart.update()

Refer to documentation

答案 1 :(得分:1)

是的,这是可能的 您必须将新字段合并到数据对象

您可以通过以下方式实现此目的:

// first chart
var myLineChart = Chart.Line(mycanvas,{
  data:data
})
// second chart
var newData = data;
newData.datasets[0].pointRadius = 5;
var myLineChart2 = Chart.line(mycanvas2,{
  data:newData
})