2013-03-07 2 views
1

Недавно я решил использовать вложенный json, однако я не могу получить к ним доступ. Я видел несколько примеров другой способ получения данных с помощью метода данных т.д .:Обработка вложенных данных json в соединения данных

var node = svg.selectAll("g.node") 
.data(nodes, function(d) {return d.world;}) 

    var node = svg.selectAll("g.node") 
.data(nodes) 

Однако это не имело никакого влияния. Поэтому я также пробовал:

.text(function(d) { return d.world.Name; }) 

Но у меня все еще не было удачи!

Вот отрывок из вложенного JSON:

  var nodes = {"Galaxy":"Milkyway","life":true,"world": [ 
     {"Name": 'Amy', "Country": 'USA', "translate":"translate(190,83)" }, 
     {"Name": 'Nathan', "Country": 'USA', "type": 'square', "translate": "translate(190,83)"}, 
     {"Name": 'Lewis', "Country": 'USA', "type": 'circle', "translate": "translate(20,183)" }, 
     {"Name": 'Tom', "Country": 'Japan', "type": 'diamond', "translate": "translate(-300,-200)"}, 
     {"Name": 'Matt', "Country": 'Russia', "type": 'cross', "translate": "translate(10,183)"}, 
     {"Name": 'Frank', "Country": 'France', "type": 'triangle-up', "translate": "translate(30,183)"}, 
     {"Name": 'Bob', "Country": 'Japan', "type": 'diamond', "translate": "translate(10,13)"} 
]}; 

заранее спасибо

+0

Форма '.data', которую вы использовали в первом экземпляре, предназначена для использования для согласования объектов, назначая [' keys' каждому элементу данных] (https://github.com/mbostock/ d3/вики/Выбор # энциклопедических данных). '.data' не соответствует тому же шаблону доступа, что и' d3.max', 'd3.mean' и т. д. –

+0

Привет, спасибо за ответ. возможно, вы могли бы показать мне пример? – Jose

+0

Этот пример от самого mbostock был бы полезен для понимания того, как работают функции _key_: http://bost.ocks.org/mike/constancy/ –

ответ

1

Я считаю, что я нашел подходящее решение моей проблемы:

var node = svg.selectAll("g.node") 
       .data(nodes.world) 

Пожалуйста, если вы есть другой, я открыт для других способов делать что-то. Спасибо :)