我似乎无法让 Chart.js 处理日期。我尝试了很多不同的方法:
let examChart = document.getElementById("examChart").getContext("2d");
let examLineChart = new Chart(examChart, {
type: "line",
data: [
{ t: new Date("2015-3-15 13:3"), y: 12 },
{ t: new Date("2015-3-25 13:2"), y: 21 },
{ t: new Date("2015-4-25 14:12"), y: 32 }
],
options: {
label: "placeholder"
}
});
和:
let examChart = document.getElementById("examChart").getContext("2d");
let examLineChart = new Chart(examChart, {
type: "line",
data: [
{ t: "2015-3-15 13:3", y: 12 },
{ t: "2015-3-25 13:2", y: 21 },
{ t: "2015-4-25 14:12", y: 32 }
],
options: {
label: "placeholder"
}
});
和:
let examChart = document.getElementById("examChart").getContext("2d");
let examLineChart = new Chart(examChart, {
type: "line",
data: [
{ t: "Sun Mar 15 2015 12:03:45 GMT+0000 (GMT Standard Time)", y: 12 },
{ t: "Wed Mar 25 2015 12:02:15 GMT+0000 (GMT Standard Time)", y: 21 },
{ t: "Sat Apr 25 2015 13:12:30 GMT+0100 (GMT Daylight Time)", y: 32 }
],
options: {
label: "placeholder"
}
});
为了仅涵盖我的一些尝试,即使阅读了文档( http://www.chartjs.org/docs/latest/axes/cartesian/time.html ),我似乎也无法正确设置日期(他们实际上并没有举个例子)
正在使用的 HTML:
<div class="container">
<canvas id="examChart"></canvas>
</div>
我只是不知道,虽然我认为这是一个相当简单的问题,但我们将不胜感激任何帮助。
原文由 Jonathan Woollett-light 发布,翻译遵循 CC BY-SA 4.0 许可协议
您必须在
dataset
中移动数据。如果您查看 使用手册,则会使用datasets
数组。文档中 时间 数据集的 “提示” 也不是那么明显(参见标题)。请参阅下面的代码段:
我刚刚复制了基本用法示例并插入了您第一次尝试的数据(+ 添加了几个标签)
更新 18.03.2020
我已经更新了代码片段以使用 Chart.js
2.8.0
并添加了以下代码,正如 @Erik 在评论中所建议的那样更新 16.02.2021
正如 @habib 所指出的,2.9.4 版本抛出了几个错误。我猜这些是由于缺少依赖项 (moment.js) 造成的。看:
资源
因此,我更改了以下内容: