ChartJS 以编程方式获取单个点

vsmadaxz  于 2023-01-05  发布在  Chart.js
关注(0)|答案(1)|浏览(179)

这应该很容易,但我有一个困难的时间弄清楚。从一个插件,我怎么能引用一个数据集的单一点?

const pulsePoint = {
      id: 'pulsePoint',
      afterDraw: chart => {
       var point = chart.???
       point.borderColor = '#ffffff'
       chart.update()
      }
jobtbby3

jobtbby31#

您应该通过chart.getDatasetMeta(datasetIndex)访问数据集 meta数据。您将获得一个表示数据集的对象。在元对象中,有一个数组属性data,它包含所有数据元素(在您的示例中为点)。在每个数据元素中,有一个对象属性options,它具有元素的选项,您可以在其中设置borderColor

const pulsePoint = {
  id: 'pulsePoint',
  afterDraw: chart => {
    const meta = chart.getDatasetMeta(0); // first dataset
    const firstPoint = meta.data[0];
    // Pay attention because it could be a loop. a condition should be set
    if (firstPoint.options.borderColor !== '#ffffff') {  
      firstPoint.options.borderColor = '#ffffff';
      chart.draw(); // better than update for this use case.
    } 
  }
};

相关问题