2014-01-08 3 views
1

http://bl.ocks.org/mbostock/4339083 Я использую этотвстраивать файл в формате JSON d3.js

вместо d3.json("/d/4063550/flare.json", function(error, flare) {

как я сделать это с помощью файла JSON в HTML, как, скажем, у меня есть

var jsonData = [{ 
"name": "A", 
"children": [ 
    {"name": "A1", "children": [{"name": "A12"},{"name": "A13"},{"name": "A14"}] }, 
    {"name": "A2", "children": [{"name": "A22"},{"name": "A23"},{"name": "A24"}] } 
] 
}]; 

и Я хочу использовать это вместо внешнего json-файла, как мне это достичь?

ответ

2

Решение:

1.you может присвоить данные JSON на имя переменной, то можно построить макет дерева

2.Use одну функцию, чтобы получить данные JSON

Fiddle для 1

Fiddle для 2 решений

var root = getData(), 
    nodes = cluster.nodes(root), 
    links = cluster.links(nodes); 
+0

спасибо за ответ, я не очень хорошо разбираюсь в js. d3.json ("mydata.json", функция (ошибка, вспышка) { корень = вспышки; root.x0 = высота/2; root.y0 = 0; функция коллапса (г) { , если (d.children) { d._children = d.children; d._children.forEach (коллапс); d.children = NULL; }} root.children.forEach (коллапс); обновление (корень); }); Я вижу, что здесь вызывается файл, а также обновление функции в другом месте. как я могу обновить эту часть кода с помощью json-массива. –

+0

В основном вы можете внести изменения в http://bl.ocks.org/mbostock/4339083? Я хочу использовать объявленный var i вместо json-файла. спасибо человеку –

+0

попробуйте этот http://jsfiddle.net/xGKfu/4/, здесь я объявил json-файл для var root .. – Manoj

Смежные вопросы