d3.js flare.json使用我创建的Json w /可折叠树

时间:2014-04-19 00:04:16

标签: json d3.js

我创建了自己的Json文件,用于collapsible tree in d3。我在每个孩子的文件中有三个额外的字段。我创建了一个包含三个子节点的根节点。每个孩子都有叶子,并在那里结束,所以总共有三个级别。

我因为能够加载json而陷入困境。我用原始的flare.json运行代码,所以其他所有工作。我在下面粘贴了相同的json。谢谢!

更新:我能够通过将json复制/粘贴到html来处理这个问题来创建一个变量,就像这个问题一样:How to load data from an internal JSON array rather than from an external resource / file for a collapsible tree in d3.js?它有效,虽然不理想,因为我有一个大的json列表。 / p>

以下是我的html代码的pastebin链接:http://pastebin.com/njdfrwhf谢谢!

  {
"name": "checkD",
"children": [
     {
     "name": "XX.YY.IP1",
     "children": [
      {"name": "xxx.yyy.1", "distance": 1, "CC": "US", "m":0},
      {"name": "xxx.yyy.2", "distance": 1.8, "CC": "US", "m":0},
      {"name": "xxx.yyy.3", "distance": 4.5, "CC": "US", "m":0},
      {"name": "xxx.yyy.4", "distance": 2.5, "CC": "US", "m":0},
      {"name": "xxx.yyy.5", "distance": 1, "CC": "US", "m":0},
      {"name": "xxx.yyy.6", "distance": 2, "CC": "US", "m":0},
      {"name": "xxx.yyy.7", "distance": 1, "CC": "US", "m":0},
      {"name": "xxx.yyy.8", "distance": 3, "CC": "US", "m":1},
      {"name": "xxx.yyy.9", "distance": 1, "CC": "US", "m":1},
      {"name": "xxx.yyy.10", "distance": 5, "CC": "US", "m":1}
      ]
    },
     {
     "name": "XX.YY.IP2",
     "children": [
      {"name": "xxx.yyy.1", "distance": 1, "CC": "US", "m":0},
      {"name": "xxx.yyy.2", "distance": 1.8, "CC": "US", "m":1},
      {"name": "xxx.yyy.3", "distance": 2, "CC": "US", "m":1},
      {"name": "xxx.yyy.4", "distance": 4.3, "CC": "US", "m":1},
      {"name": "xxx.yyy.5", "distance": 5, "CC": "US", "m":0},
      {"name": "xxx.yyy.6", "distance": 2, "CC": "US", "m":0},
      {"name": "xxx.yyy.7", "distance": 1.3, "CC": "US", "m":0},
      {"name": "xxx.yyy.8", "distance": 3, "CC": "US", "m":1},
      {"name": "xxx.yyy.9", "distance": 4, "CC": "US", "m":1},
      {"name": "xxx.yyy.10", "distance": .5, "CC": "US", "m":1}
      ]
     },
     {
     "name": "XX.YY.IP3",
     "children": [
      {"name": "xxx.yyy.1", "distance": 1, "CC": "US", "m":0},
      {"name": "xxx.yyy.2", "distance": 1.8, "CC": "US", "m":0},
      {"name": "xxx.yyy.3", "distance": 2, "CC": "US", "m":0},
      {"name": "xxx.yyy.4", "distance": 4.3, "CC": "US", "m":0},
      {"name": "xxx.yyy.5", "distance": 5, "CC": "US", "m":0},
      {"name": "xxx.yyy.6", "distance": 2, "CC": "US", "m":0},
      {"name": "xxx.yyy.7", "distance": 1.3, "CC": "US", "m":0},
      {"name": "xxx.yyy.8", "distance": 3, "CC": "US", "m":0},
      {"name": "xxx.yyy.9", "distance": 4, "CC": "US", "m":0},
      {"name": "xxx.yyy.10", "distance": .5, "CC": "US", "m":0}
      ]
     }
 ]
}

1 个答案:

答案 0 :(得分:0)

使用d3.json加载文件时,它使用http请求。如果文件是本地文件,大多数现代浏览器将拒绝获取文件,因为这会对浏览器用户造成安全风险(GET c:\ allmypasswords.txt)

Firefox通过本地运行的HTML请求本地文件更加宽松,因此您可以尝试在那里运行代码。另一种方法是使用服务器提供JSON文件,方法是将其托管在Web上或在本地运行服务器。

编辑似乎问题实际上是JSON。您有两个包含前导小数的值。当我在小数前加一个0时就可以了。怪异。