我现在已经努力了几天,试图找出如何在24小时x轴上显示我的数据。
这是我的数据:
"glucoseMesures": [
{
"glucose": 85,
"date": "2015-06-12T00:49:50+00:00"
},
{
"glucose": 77,
"date": "2015-06-12T07:09:03+00:00"
},
{
"glucose": 58,
"date": "2015-06-12T11:23:15+00:00"
},
{
"glucose": 110,
"date": "2015-06-12T16:00:58+00:00"
},
{
"glucose": 97,
"date": "2015-06-12T19:35:01+00:00"
},
{
"glucose": 142,
"date": "2015-06-12T21:15:50+00:00"
}
]
我能够将它们绘制到Recharts和Chart.js,但似乎无法将它们绘制到时间顺序。使用“图表”,我能够按时间顺序将它们绘制出来,但是随后无法修改x轴标签来显示此内容:
labels: ["00:00", "03:00", "06:00", "09:00", "12:00", "15:00", "18:00", "21:00", "00:00"]
我只需要一个带有标签时间的X轴,然后将数据绘制到葡萄糖时间,对不起,我已经制作了jsfiddle。我正在使用反应。
您可以通过使用内置的与chart.js之做到这一点很容易time
轴。
技巧是为x轴提供正确的配置值:
unit: hour
-刻度基于小时。stepSize: 3
-每三个小时显示一次滴答声。min: "2015-06-12T00:00"
-滴答声从一天开始。max: "2015-06-13T00:00"
-滴答声在第二天开始时结束。只要您提供的数据集正确排序(按顺序的日期时间顺序),您就应该得到如下代码片段所示的结果:
new Chart(document.getElementById("chart"), {
type: "line",
data: {
datasets: [{
data: [{
t: "2015-06-12T00:49:50+00:00",
y: 85
},
{
t: "2015-06-12T07:09:03+00:00",
y: 77
},
{
t: "2015-06-12T11:23:15+00:00",
y: 58,
},
{
t: "2015-06-12T16:00:58+00:00",
y: 110
},
{
t: "2015-06-12T19:35:01+00:00",
y: 97
},
{
t: "2015-06-12T21:15:50+00:00",
y: 142
}
]
}]
},
options: {
scales: {
xAxes: [{
type: "time",
time: {
unit: "hour",
stepSize: 3,
min: "2015-06-12T00:00",
max: "2015-06-13T00:00",
displayFormats: {
hour: 'HH:mm'
}
}
}]
}
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.8.0/Chart.bundle.min.js"></script>
<canvas id="chart"></canvas>
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句