如何定义 chart.js 时间刻度日期格式

How to define chart.js time scale date formats

我正在使用 chart.js,我想为我的数据设置自定义日期格式。我该怎么做?

例如,这是我的 x 轴日期配置:

 scales: {
                    xAxes: [{
                        type: 'time',
                        position: 'bottom',
                        time: {
                            displayFormats: {
                                **'day': 'Y M D',
                                'week': 'Y M D',
                                'month': 'Y M D',
                                'year': 'Y M D',**
                            }
                        },

如何控制工具提示和轴刻度标签格式。

如果你想格式化tbat出现在point hover tooltip中的数据,那么在使用time scale的时候,你可以使用tooltipFormat 属性设置moment js format string为用于工具提示。

scales: {
  xAxes: [{
    type: 'time',
    position: 'bottom',
    time: {
      tooltipFormat: "MM-DD-YYYY",
    },
  }],
}

但是,如果您尝试设置 x 轴刻度标签的格式,使其只显示日期的日部分,那么您可以使用 unit 属性.

scales: {
  xAxes: [{
    type: 'time',
    position: 'bottom',
    time: {
      unit: "day",
    },
  }],
}

以上示例使用为 day 定义的默认显示格式,即 'll'(例如 1986 年 9 月 4 日)。如果您想将此格式更改为其他格式(例如 09/04/1986),则可以像这样重新定义 day 显示格式。

scales: {
  xAxes: [{
    type: 'time',
    position: 'bottom',
    time: {
      unit: "day",
      displayFormats: {
        day: "l",
      },
    },
  }],
}