Javascript 如何将小时和分钟数据输入chartJS
我正在尝试使用chart.js制作折线图。我的数据格式如下:Javascript 如何将小时和分钟数据输入chartJS,javascript,chart.js,momentjs,data-visualization,Javascript,Chart.js,Momentjs,Data Visualization,我正在尝试使用chart.js制作折线图。我的数据格式如下: var result = [{x:"18:00",y:"230"},{x:"19:00",y:"232"},{x:"20:00",y:"236"},{x:"22:00",y:"228"}]; 其中x表示时间,以小时和分钟表示。我这样输入数据 var ctx = document.getElementById("myChart").getContext('2d'); var myChart = new Chart(ctx, {
var result = [{x:"18:00",y:"230"},{x:"19:00",y:"232"},{x:"20:00",y:"236"},{x:"22:00",y:"228"}];
其中x表示时间,以小时和分钟表示。我这样输入数据
var ctx = document.getElementById("myChart").getContext('2d');
var myChart = new Chart(ctx, {
type: 'line',
data: {
labels: ["00:00","01:00","02:00","03:00","04:00","05:00","06:00","07:00","08:00","09:00","10:00","11:00","12:00","13:00","14:00","15:00","16:00","17:00","18:00","19:00","20:00","21:00","22:00","23:00","24:00"],
datasets: [{
label: 'Voltage Fluctuation',
data: result,
borderWidth: 1
}]
},
options: {
scales: {
xAxes: [{
type: 'time',
position: 'bottom',
unit: 'minute',
time: {
displayFormats: {
hour: 'HH:mm'
}
}
}],
},
}
});
我得到的是一张空表。我哪里做错了?我觉得我的标签有问题,因为它们没有出现在图表上,但我不明白怎么做。有什么方法可以将momentjs提供给datalabels吗?您不能将
结果
数组传递给数据,因为它的格式不正确<代码>数据
属性需要一个数字数组。因此,在将标签(使用矩.js)和数据用于图表之前,需要解析result
数组中的标签和数据
下面是如何从结果
数组中解析标签和数据并将其输入图表:
var result=[{x:“18:00”,y:“230”},{x:“19:00”,y:“232”},{x:“20:00”,y:“236”},{x:“22:00”,y:“228”};
//解析标签和数据
var labels=result.map(e=>moment(e.x,'HH:mm');
var数据=result.map(e=>+e.y);
var ctx=document.getElementById(“myChart”).getContext(“2d”);
var myChart=新图表(ctx{
键入:“行”,
数据:{
标签:标签,
数据集:[{
标签:“电压波动”,
数据:数据,
边框宽度:1
}]
},
选项:{
比例:{
xAxes:[{
键入:“时间”,
时间:{
单位:小时,
显示格式:{
小时:“HH:mm”
}
}
}]
},
}
});代码>
难道没有办法让这一行成为唯一的一行吗?而不是图表占用的区域?是,再次为数据集设置fill:false