You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Chart.js图表标题显示undefined,使用Object.keys(groupMedia)为标签该如何修复

问题原因

你看到的undefined是Chart.js的图例项/全局标题缺失配置导致的,和你用Object.keys(groupMedia)生成的X轴坐标标签无关,不需要修改这部分逻辑。

解决方案

情况1:图例位置显示undefined(每条折线旁边的文本)

你所有dataset配置中都缺少label属性,这个属性就是控制图例显示文本的,修改两处添加数据集的代码即可:

  • 修改汽油数据集添加逻辑(addDataG函数):
var newDataset = {
  label: '汽油', // 新增这行即可
  backgroundColor: 'rgba(165, 42, 42, 1)',
  borderColor: 'rgba(165, 42, 42, 1)',
  borderWidth: 1,
  data: variacao.checked ? r : Object.values(grupoMedia),
}
  • 修改乙醇数据集添加逻辑(addDataE函数):
var dataset1 = {
  label: '乙醇', // 新增这行即可
  backgroundColor: 'rgba( 30, 144, 255, 1 )',
  borderColor: 'rgba( 30, 144, 255, 1 )',
  borderWidth: 1,
  data: variacao.checked ? r2 : Object.values(grupoMedia),
}

如果需要和数值模式联动,可以动态修改label内容,例如:

label: variacao.checked ? '汽油(变化率%)' : '汽油'

情况2:图表全局标题位置显示undefined

在初始化Chart实例时补充标题配置即可,修改atualizarGrafico函数中的Chart初始化代码:

myChart = new Chart(ctx, {
  type: 'line',
  data: {
    labels: Object.keys(grupoMedia),
    datasets: [
      {
        data: Object.values(grupoMedia)
      }
    ]
  },
  // 新增以下配置
  options: {
    plugins: {
      title: {
        display: true,
        text: 'Petrópolis燃油价格历史走势' // 自定义标题内容
      }
    }
  }
});

内容的提问来源于stack exchange,提问作者Bruno

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 07:36:03