我在这样的数组中有多个数据系列:
[
{
"key": "series1",
"values": [
{
"x": 1378405800000, "y": 0
},
{
"x": 1378407600000, "y": 0
},
...
]
},
{
"key": "series2",
"values": [
{
"x": 1378405800000, "y": 0
},
{
"x": 1378407600000, "y": 0
},
...
]
},
..
]
我使用以下内容合并它们:
var t = {};
var o = data2; //above data structure
for( srs = 0; srs < o.length; srs++ )
{
key = o[srs]['key'];
for ( ele = 0; ele < o[srs]['values'].length; ele++ )
{
mykey = o[srs]['values'][ele]['x'];
if (!t.hasOwnProperty(mykey))
t[mykey] = {};
t[mykey]['x'] = o[srs]['values'][ele]['x'];
t[mykey][key] = o[srs]['values'][ele]['y'];
}
}
var multseries = [];
for (ele in t)
multseries.push(t[ele]);
Q1这可以通过d3.js API使用map或nest吗?
Q2使用或不使用d3.js有更好的方法吗?这将通过所有系列的每个元素一次,但一次一个系列。是否有可能按x的顺序合并(x-提取和合并元素)。如果系列中缺少某些元素也会怎样。