Javascript 当类别较少时,如何在highchart中显示所有数据?
我正在使用highcharts为我的数据生成图表。我的疑问如下:如果我有如下数据,我知道这段时间是今天Javascript 当类别较少时,如何在highchart中显示所有数据?,javascript,highcharts,Javascript,Highcharts,我正在使用highcharts为我的数据生成图表。我的疑问如下:如果我有如下数据,我知道这段时间是今天 "data": [{ "time": '12-10-2020 00:50:00', "value": 526.42 }, { "time": '12-10-2020 01:45:00', "value": 80 }, { "time": '12-10-2020 02:
"data": [{
"time": '12-10-2020 00:50:00',
"value": 526.42
}, {
"time": '12-10-2020 01:45:00',
"value": 80
}, {
"time": '12-10-2020 02:47:00',
"value": 17
}, {
"time": '12-10-2020 03:52:00',
"value": 21
}, {
"time": '12-10-2020 08:50:00',
"value": 5
}, {
"time": '12-10-2020 09:48:00',
"value": 5
}]
我大约有每小时的数据,但间隔不是固定的,所以有时它也跳过一个小时,或者间隔可能不到一个小时,所以我有比这里多得多的数据。
因此,我希望我的类别类似于['00:00'、'01:00'、'02:00'、'03:00'、'04:00'、'05:00'、'06:07'、'00:08'、'09:00'…]
,因此x轴上总共有24个标签。但是,当我像这样设置类别时,如果序列中的数据多于类别,则并非所有数据都显示在图表中。
感谢您的帮助 您可以根据数据计算
min
和max
属性:
var oneHour = 1000 * 60 * 60;
Highcharts.chart('container', {
time: {
useUTC: false
},
xAxis: {
type: 'datetime',
startOnTick: false,
endOnTick: false,
tickInterval: oneHour,
min: new Date(data.data[0].time.split(' ')[0]).getTime(),
max: (new Date(data.data[0].time.split(' ')[0]).getTime()) + oneHour * 24
},
series: [{
data: data.data.map(el => [
new Date(el.time).getTime(),
el.value
])
}]
});
现场演示: API参考:
工作得很好。。。谢谢!