我正在使用这个: http://mbostock.github.io/d3/talk/20111018/partition.html
而不是d3.json(“flare.json”,function(root){
如何让它使用html中的json文件,比如说我有
var json = [{
"name": "flare",
"children": [
{"name": "analytics",
"children": [
{"name": "cluster","children": [{"name": "AgglomerativeCluster", "size": 3938},
{"name": "CommunityStructure", "size": 3812},
{"name": "HierarchicalCluster", "size": 6714},
{"name": "MergeEdge", "size": 743}
]
},
我想使用它而不是外部json文件,我该如何实现?
链接到json文件:http://mbostock.github.io/d3/talk/20111018/flare.json
请问任何JSFiddle示例?
谢谢。
答案 0 :(得分:2)
您将通过两种方法实现此目的:
1.您可以将JSON数据分配给变量名称然后您可以构建任何布局
2.使用一个函数获取JSON
数据
Fiddle 1个解决方案
var root = json;
对于2解决方案
var root = getData();
var g = vis.selectAll("g")
.data(partition.nodes(root))
.enter().append("svg:g")
.attr("transform", function(d) { return "translate(" + x(d.y) + "," + y(d.x) + ")"; })
.on("click", click);