2013-07-11 77 views
0

我正在使用d3.js库开发解决方案,当我们点击圆时它应该放大并且数据需要在圆内显示。无法加载d3.js中的Json文件

作为第一步我试图从Json文件加载数据。

以下是json文件的内容,我使用的是Visual Studio 2012。

mydata.json

[{ “Name”: “拉维”, “年龄”:25},{ “名”: “阿曼”, “年龄”:29}]

两个。 html文件和.json文件位于同一个文件夹中,但仍然出现错误。

线:5734 错误:无法获得属性的值 '孩子':对象为空或未定义

下面是脚本:

var canvas = d3.select("body").append("svg") 
       .attr("width", 500) 
        .attr("height", 500); 

    d3.json("mydata.json", function (data) { 
     var treemap = d3.layout.treemap() 
     .size([500, 500]) 
     .nodes(data) 
     console.log(treemap); 

    }); 

</script> 

注:我是只是试图加载文件并使用布局树图。

感谢

回答

1

为了获得正在发生的事情的一个更好的主意,要么使用debugger; +一个dev console或添加更多的日志记录:

d3.json("mydata.json", function (error, data) { 
    console.log(error); 
    console.log(data); 
    var treemap = d3.layout.treemap() 
     .size([500, 500]) 
     .nodes(data) 
    console.log(treemap); 
}); 

主机中的文件与python -m SimpleHTTPServer并导航到127.0.0.1:8000记录以下在我的电脑上:

null 
[{"name":"Ravi","age":25},{"name":"aman","age":29}] 
[[{"name":"Ravi","age":25},{"name":"aman","age":29}]] 

这让我觉得你没有访问t他通过服务器文件;我会尝试做that

+0

作为一项快速测试,Firefox *可能*让您在没有服务器的情况下加载本地文件,但亚当建议使用服务器仍然有效。 – d3noob

+0

嗨,亚当,感谢您的回复,我正在本地主机上运行html页面:http:// localhost:53496/ZoomExample.html – user2573216