我有一个力导向图,当它运行时,我希望能够更改读取的 JSON 文件,从而更改数据/力导向图。
我可以通过更改文件名在 HTML 中更改它,但我希望异步执行此操作。
我看过 AJAX
和 XHR (XMLHttpRequest)
但我不知道从哪里开始
最佳答案
正如评论中所述,这是一个广泛的问题,因此这里有一个广泛的答案:如果您使用 d3.json
,那么您可能会看到类似的内容:
d3.json("graphdata1.json", createMyGraph);
您可以使用字符串变量来引用文件名并根据需要进行修改:
var graphFilename = "defaultGraph.json";
// Some kind of logic gets a different filename from a selector resulting in something like
graphFilename = "newGraphData.json";
d3.json(graphFilename, createMyGraph);
如果您想将绘制的图形转换为另一个图形,这是一个更复杂的过程(也是一个不同的问题),涉及 .enter()
和 .exit()
以及更新行为。
关于javascript - 如何选择在 D3 力定向图中使用哪个 JSON 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27946147/