javascript:对象数组中的对象数组

javascript: array of objects within an array of objects

本文关键字:数组 对象 javascript      更新时间:2023-09-26

这是示例数据:

var data = [
    {row: 0, col: 0, value: [{x: 1, y: 19}, {x: 2, y: 20}]},
    {row: 0, col: 1, value: [{x: 1, y: 24}, {x: 2, y: 27}]},
    {row: 1, col: 1, value: [{x: 1, y: 31}, {x: 2, y: 26}]},
    {row: 1, col: 2, value: [{x: 1, y: 29}, {x: 2, y: 19}]},
]

我想不出定义x域的方法。

var x1 = d3.scale.ordinal()
        .domain(data.map(function(d) { return d.value.x; }))
        .rangeRoundBands([0, chartW], 0.1);

此位给出错误:

 .domain(data.map(function(d) { return d.value.x; }))

我如何在值对象的内部数组中进行迭代??

提前感谢!

这里需要有两个嵌套迭代:

.domain([
  d3.min(data, function(d) { return d3.min(d.value, function(e) { return e.x; }); }),
  d3.max(data, function(d) { return d3.max(d.value, function(e) { return e.x; }); })
  ]);

与CCD_ 1类似。