chart.jsv2.9.4中的'generateLabels'正在生成未定义的标签

bqujaahr  于 2023-05-17  发布在  Chart.js
关注(0)|答案(1)|浏览(143)

Code link

我无法做出如上图所示的精确图形。两种方法我都试过了;一种方式使用具有三个不同标签的3个数据,第二种方式使用3个数据集。
第一种方法的问题是generateLabels函数不能正常工作,结果显示为undefined。我认为这是因为版本,但不知道如何解决它。标签是静态的,所以我认为我们甚至可以硬编码值。
我在使用第二种方法时遇到的问题是x轴没有正确显示数据集的标签。

p5cysglq

p5cysglq1#

在Chart.js 2.x版本中,legendtitletooltips必须在options节点中定义,而不是在plugins节点中定义。

options: {
    ...
    legend: {
      position: 'top',
      display: true,
      labels: {
        generateLabels: function(chart) {
          let data = chart.data;
          if (data.labels.length && data.datasets.length) {
            return data.labels.map((label, i) => {
              return {
                text: label
              }
            })
          }
          return [];
        },
      }
    },
    title: {
      display: true,
      text: 'Attendees'
    },
    plugins: {
      labels: {
        render: () => {}
      }
    }
    ...
  }

相关问题