如何使用d3.js访问JSON

How to access JSON using d3.js

本文关键字:访问 JSON js d3 何使用      更新时间:2024-01-21

似乎找不到这个问题的答案。

d3.js是否需要使用特定格式的数据。例如:

var dataset = {
"people": [
  {
    "name": "person1",
    "projects": [
      {
        "name": "project1"
      },
      {
        "name": "project3"
      }
    ]
  },
  {
    "name": "person2",
    "projects": [
      {
        "name": "project1"
      },
      {
        "name": "project2"
      }
    ]
  }
 ]
};

然后使用这个:

d3.select('body')
.selectAll('p')
  .data(dataset)
  .enter()
  .append('p')
  .text(function(d){
    return d;
  }); 

不会归还任何东西。

希望有人能帮忙。

文档和其他教程都说你可以使用上面的,但总是把数组作为示例/演示。

正如@MikeAtkins所说,您正在尝试数据绑定外部对象。尝试:

var dataset = {
"people": [
  {
    "name": "person1",
    "projects": [
      ...
    ]
  },
  ...
 ]
};
d3.select('body')
.selectAll('p')
  .data(dataset.people)
  .enter()
  .append('p')
  .text(function(d){
    return d.name;
  }); 

如果你想绑定到NESTED数组(即每个人的每个项目),你应该看看本教程。