在d3.js中加载.json时,我没有得到一个对象数组

时间:2014-07-05 17:32:04

标签: d3.js

我正在尝试将.json加载到d3中,但我没有得到一个对象数组。

我的json结构是这样的:

{
  "01": {
    "a": "7.9146197142424404",
    "b": "8", 
    "c": "64.52183289033583", 
    "d": "bar"
  }, 
  "02": {
    "a": "6.1448162722275468", 
    "b": "2", 
    "c": "82.657170917364141", 
    "d": "foo"
  }
}

正在加载数据:

        d3.json('mydata.json', function(data){

            console.log(data)


        });

当我在console.log中获取数据时,我得到了这个:

https://www.dropbox.com/s/rgf38dkt6nrurei/Screen%20Shot%202014-07-05%20at%2019.26.41.png

更新

所以我想要做的是为每个.json对象添加元素,但如果我可以将第一个数字作为Key,那就太好了。

1 个答案:

答案 0 :(得分:0)

您可以使用d3.entries()将您的一个巨型对象转换为包含子对象的数组。

执行此操作时,每个数组成员都将是一个具有.key属性和.value属性的对象。第一个成员的关键字为'01',第二个成员为'02',等等。该值将是包含属性ab,{{的对象1}}和c

例如:

d

将输出:

d3.json('mydata.json', function(data) {
  console.log(d3.entries(data));
});

以下是PLUNK

的示例