我有一个时间序列,有 1 天的实时数据。(例如分钟到分钟的滴答声)但是,它也有可以追溯到 5 年左右的历史时间数据。
如果我缩小图表,因为我说过......今天是 500 点,而在我所涵盖的其余时间段内是 500 点,图表的行为会很奇怪:
- 一天占图表的 50%。
我希望图表能够占据那一天,并将其缩小,这样如果我查看一年的数据,那一天只代表图表的 1/365,而不是(它似乎在做什么)滴答声当天/总刻度
EG 数据集:
for(var i=0; i< 15; i++){ // push 15 records going back an hour each
data.push([ new Date().getTime() - 1000*60*60*i , (Math.floor(2*Math.random())) % 3 + 1])
}
for(var i=1; i< 21; i++){ // push 20 records going back a month each
data.push([ new Date().getTime() - 1000*60*60*24*7*30*i , (Math.floor(2*Math.random())) % 3 + 3])
}
所以有了这些数据,我得到
15+20 = 35 //total ticks
一天使用的百分比是15/35 = ~42%
而我希望它代表(以图表区域的百分比表示)
20*30*24 =14400 //total amount of hours represented by months going backwards
15/14400 = ~1% // hours with fine ticks / total hours -- WHY IS IT NOT THIS?
如果您放大那天,分布就是人们所期望的(缩放超过整个周期)
粗略的例子见小提琴:http: //jsfiddle.net/K6nUv/3/