随着时间的推移,我有一系列数据值(由计数确定)。数据以 n 分钟间隔提供(计数x间隔);通常数据为96 x 15(96个15分钟间隔,24小时)。间隔的长度和计数都是动态的。数据系列可以是多种类型的数据;它可以是多种格式,如0.000123或1.23或198763.0000089675。
我希望我的xaxis以1小时为间隔显示时间(屏幕空间很小,因此需要2小时的间隔时间)。我有这个:
xAxis: {
type : 'datetime',
title: {
text: 'Time ('+period+')'
},
dateTimeLabelFormats: {
minute: '%H:%M',
hour: '%H:%M'
}
}
和这样的系列:
[15999.999999999996,14999.999999999996,15999.999999999996,14999.999999999996,13999.999999999996,15999.999999999996,17999.999999999993,17999.999999999993,16999.999999999993,15999.999999999996,16999.999999999993,14999.999999999996,14999.999999999996,13999.999999999996,14999.999999999996,14999.999999999996,14999.999999999996,14999.999999999996,15999.999999999996,19999.999999999993,23999.999999999993,27999.999999999993,24999.999999999993,22999.999999999993,21999.999999999993,23999.999999999993,29999.999999999993,26999.999999999993,29999.999999999993,31999.999999999993,34999.999999999985,31999.999999999993,31999.999999999993,33999.999999999985,34999.999999999985,32999.999999999985,32999.99999999998,32999.99999999997,32999.99999999997,32999.99999999997,32999.999999999985,32999.999999999985,34999.999999999985,32999.999999999985,32999.999999999985,32999.999999999985,35999.999999999985,32999.999999999985,35999.999999999985,32999.999999999985,33999.999999999985,30999.999999999993,28999.999999999993,31999.999999999993,32999.999999999985,33999.999999999985,30999.999999999993,32999.999999999985,32999.999999999985,30999.999999999993,30999.999999999993,31999.999999999993,31999.999999999993,29999.999999999993,29999.999999999993,30999.999999999993,30999.999999999993,26999.999999999993,25999.999999999993,27999.999999999993,29999.999999999993,27999.999999999993,26999.999999999993,25999.999999999993,26999.999999999993,27999.999999999993,25999.999999999993,28999.999999999993,29999.999999999993,26999.999999999993,24999.999999999993,18999.999999999993,17999.999999999993,16999.999999999993,16999.999999999993,15999.999999999996,16999.999999999993,15999.999999999996,14999.999999999996,15999.999999999996,15999.999999999996,14999.999999999996,14999.999999999996,15999.999999999996,15999.999999999996,14999.999999999996]
但是xaxis上的值是:
00:00:00.020 00:00:00.040 00:00:00.020 00:00:00.020
我已经开始使用highcharts API了,但我不知道如何处理时间序列。
如何告诉highcharts正确显示时间?
答案 0 :(得分:3)
如果轴的类型为datetime,那么图表将以最适合的方式呈现它们。如果您不喜欢它们的渲染方式,您可以像使用dateTimeLabelFormats那样控制图表的日期时间格式。
根据图表选择以下默认格式之一时数据的日期时间范围:
second: '%H:%M:%S',
minute: '%H:%M',
hour: '%H:%M',
day: '%e. %b',
week: '%e. %b',
month: '%b \'%y',
year: '%Y'
如果您想将它们全部强加到小时和分钟,无论范围是什么,请按如下方式设置:
second: '%H:%M',
minute: '%H:%M',
hour: '%H:%M',
day: '%H:%M',
week: '%H:%M',
month: '%H:%M',
year: '%H:%M'
要控制显示日期的间隔,请使用tickInterval。由于你的轴是类型 datetime你必须使用毫秒作为tickInterval的单位。因此,1小时的滴答间隔(以毫秒为单位)为3600000.如果您希望它为2小时,则使用7200000。
答案 1 :(得分:1)
这里粗略猜测你没有在你的系列中加入时间。 如果你的xAxis是datetime,你需要以某种方式提供给HighCharts。 例如,您的系列应该如下所示:
[[timeInJSTime1, 15999.999999999996],
[timeInJSTime2, 14999.999999999996],
....
]