我可以绑定一个 onclick 事件并在 chartjs 中编辑一个点吗

Can I bind an onclick event and edit a point in chartjs

我正在使用 chartjs 制作一个小项目。在编辑要点时,我感到有些困惑和倒霉。

这个库中是否有任何函数可以绑定一个 onclick 事件,向我显示一个弹出窗口,我可以删除该点?

这是我想要的摘要:

  1. 点击该点,出现一个弹出窗口
  2. 点击删除按钮后,它删除了点并重新绘制了点。 现在我只使用简单的折线图 this is my jsFiddle

我正在使用 chartjs 2.6

您可以使用 option 中的 onclick 事件来显示弹出窗口。 然后您可以检查是否用 getElementsAtEvent and if so remove it from the options and update 图表点击了一个点。 我已经更新了你的 jsfiddle.

var option = {
    showLines: true,
    onClick: function(evt) {   
      var element = myLineChart.getElementAtEvent(evt);
      if(element.length > 0)
      {
        var ind = element[0]._index;
        if(confirm('Do you want to remove this point?')){
          data.datasets[0].data.splice(ind, 1);
          data.labels.splice(ind, 1);
          myLineChart.update(data);
        }
      }
    }
};