修改 Chart.js 中散点图的 X 轴标签 2

Modifying the X-Axis Labels of a Scatterplot in Chart.js 2

在 Chart.js 2 中,我生成了一个散点图,其中 x 坐标是 Epoch 时间戳,y 坐标是整数。我想知道是否有一种方法可以格式化图表的 x 轴标签,以便日期以人类可读的格式显示。

更新:目前我正在从以毫秒为单位的 Unix 时间戳构建我的图表。此原型的其他部分使用 Date class 的 toDateString 方法格式化这些日期(例如,Fri Aug 5 2016)。

为此,您可以使用 scales.xAxes 选项中的 ticks.userCallback,以便您 return 每个 x 轴刻度的格式化日期。如果您使用的是 momentjs 附带的捆绑版本 chartjs,这真的很容易,但如果您只是以毫秒为单位传递时间戳,您可以对标签做任何您想做的事情。

options: {
    scales: {
        xAxes: [{
            ticks: {
                userCallback: function(label, index, labels) {
                    return moment(label).format("DD/MM/YY");
                }
             }
        ]}
     }
 }

fiddle https://jsfiddle.net/leighking2/q5ak7p3h/

版本 3.4 你可以这样做:

 options: {
        scales: {
            x: {
                ticks: {
                    // Include a dollar sign in the ticks
                    callback: function(value, index, values) {
                        return '$' + value;
                    }
                }
            }
        }
    }