Javascript 使用D3可缩放树映射代码作为模板

Javascript 使用D3可缩放树映射代码作为模板,javascript,d3.js,Javascript,D3.js,我刚刚开始学习javascript,但我可能雄心勃勃地认为我可以从中获取代码,在文件中硬编码我自己的json,而不是使用d3.json,并轻松地让树映射反映我的新数据。作为实践,我插入了我知道应该正确格式化的试用json,使用上面引用的堆栈溢出问题推荐的方法。代码的替换部分如下所示: var root = {"name": "flare","children": [{"name": "analytics","children": [{"name": "cluster","children": [

我刚刚开始学习javascript,但我可能雄心勃勃地认为我可以从中获取代码,在文件中硬编码我自己的json,而不是使用d3.json,并轻松地让树映射反映我的新数据。作为实践,我插入了我知道应该正确格式化的试用json,使用上面引用的堆栈溢出问题推荐的方法。代码的替换部分如下所示:

var root = {"name": "flare","children": [{"name": "analytics","children": [{"name": "cluster","children": [{"name": "MergeEdge", "size": 10 }]}]}]};

function(root) {

initialize(root);
accumulate(root);
layout(root);
display(root);
它最初看起来是这样的,在我删除的脚本末尾有一个结束括号:

d3.json("flare.json", function(root) {

  initialize(root);
  accumulate(root);
  layout(root);
  display(root);

但是当我在浏览器中打开html文件时,我只得到一个空的灰色框,而不是树状图。我意识到我犯了一些非常基本的错误,我甚至不能开始弄清楚它是什么。在我进一步了解d3/javascript之前,我的“模板”方法是注定要失败的,还是有一个简单的解决方法?

这可能不是解决问题的完整方法,但至少你需要使用JSON.parse(这里是JSON\u STRING\u)而不是直接使用字符串。

谢谢,我最终使用了d3.JSON()方法(不知道为什么我一开始不想使用它),但我会在将来记住json.parse()。