使用时间缩放x轴事件在d3中使用图形挂钩。用图解释整个情况毫无意义,但我得出了一个解决方案的结论。为此,我想出了这个解决方案,我很困惑。
Imgine我有一个对象:
{
"values" : [ [ 1136005200000 , 1271000.0] , [ 1138683600000 , 1271000.0] , [ 1141102800000 , 1271000.0] , [ 1143781200000 , 0] , [ 1146369600000 , 0]
}
让我们说它有成对:[x,y]。 x看起来像'1136005200000',这是一个UTC解析日期。
我需要做的是创建一个虚拟对象。在那个对象中,我需要设置默认日期,比如7天用一些解析过的数字。此外,我需要确保上面对中不存在的日期将'y'输入为0,然后将对象最终确定为7天,只需插入可用的值。
任何想要分享的想法或方法,请继续!
答案 0 :(得分:0)
例如,您有两个数组:
var arr1 = [{a:1,b:34},{..} ..]长度为10 var arr2 = [{a:1,b:0}] upto length< 10
在某些头脑风暴之后,我以某种方式设法使用这几行来修复它。
预先计算一个查找表,将“时间”映射到替换“计数”
var lookup = {}, i, e;
for(i = 0, e = arr2[i]; i < arr2.length; e = arr2[++i])
lookup[e.time] = e.count;
旋转目标阵列&amp;合并来自查找'arr2'的'count'
for(i = 0, e = arr1[i]; i < arr2.length; e = arr2[++i])
e.count = lookup[e.time] || 0; // Finalizes `arr2` after merging
如果不存在值,则指定零,并使用类似的键值对进行合并。