Chart.js X轴日期格式配置问题:如何仅显示月日而非时间与时区
Chart.js X轴日期格式配置问题:如何仅显示月日而非时间与时区
我遇到了一个Chart.js的X轴日期格式问题:X轴现在显示的是完整的时间和时区,但我只想展示月份和日期。
我写的代码如下:
function dateSeries(startDate, endDate) { let dates = []; let currentDate = new Date(startDate); while (currentDate <= endDate) { dates.push(new Date(currentDate)); currentDate.setDate(currentDate.getDate() + 1); } return dates; }; let ctx = document.getElementById('myChart'); let goal = [5,4,3,2,1,0]; let dates = dateSeries(new Date('2024-12-03'), new Date('2024-12-08')); let myChart = new Chart(ctx, { type: 'line', data: { labels: dates, datasets: [ { label: 'Goal', data: goal, borderColor: 'rgba(142, 180, 227, 1)', } ] }, options: { scales: { x: { type: 'time', time: { unit: 'day', displayFormats: { day: 'MMM DD' } } } } } });
目前渲染出来的效果是这样的:
我感觉自己写的options配置和找到的所有示例都一致,但就是没法让X轴格式正确显示。
更新:关于适配器的尝试
我之前没有配置任何日期适配器,原以为Chart.js有默认的适配器,不需要额外引入,除非有特殊需求。不过现在我也可以尝试引入适配。
我把日期格式改成了day: 'MMM dd',代码看起来和@kikon的示例完全一样(那个示例明明可以正常工作),但我的图表还是没变化:
除了日期格式的修改,我的Script.js和上面的代码完全一致。
备注:内容来源于stack exchange,提问作者Dick Kusleika
相关产品推荐
相关产品推荐

