将包含JSON内容的JS变量传递给d3.json函数

时间:2014-02-01 21:59:38

标签: javascript jquery json d3.js

我正在使用D3.js拖放,Zoomable,平移,可折叠树以及自动调整大小,如下所示:http://bl.ocks.org/robschmuecker/7880033

如这里的示例所示,dndTree.js有一个函数d3.json,它将JSON文件位置作为参数(在本例中为“flare.json”):

treeJSON = d3.json("flare.json", function(error, treeData) {

// Calculate total nodes, max label length
var totalNodes = 0;
var maxLabelLength = 0;

由于我的JSON文件是动态创建的,我想将这个JSON存储到JS变量中,并将此变量传递给函数并形成树。

到目前为止,我能够获取JSON数据,解析它并将其存储在JS变量中,但是当我将此变量传递给d3.json函数而不是文件时,该函数无法识别变量(console.log导致未定义)内容,因为它无法读取任何JSON内容,所以它不会创建树。

关于如何将此变量传递给函数以创建树的任何建议?

1 个答案:

答案 0 :(得分:0)

在这种情况下,您无需调用d3.json - 在您发布的示例代码中,treeData包含已解析的JSON。如果您已经拥有,那么您需要做的就是调用您在treeData中存储的变量。