2010-08-31 6 views
0

Mes données ressemble à ceci:Giving nœuds non-feuille de données/valeurs protovis

var root = { 
    node1: { 
     node2: 4, 
     node3: 2 
    }, 
    node4: { 
     node5: 3 
    } 
}; 

est similaire à la façon dont ils suggèrent les données soient mis pour les structures d'arbres dans leurs exemples. Ma question est la suivante: comment donner des valeurs à node1 et node4?

Merci.

Répondre

0

Cela ressemble à une vieille question, mais voici une réponse de toute façon. Consultez http://vis.stanford.edu/protovis/ex/indent.html Plus particulièrement,

var root = pv.dom(flare) 
.root("flare") 
.sort(function(a, b) pv.naturalOrder(a.nodeName, b.nodeName)); 

/* Recursively compute the package sizes. */ 
root.visitAfter(function(n) { 
    if (n.firstChild) { 
    n.nodeValue = pv.sum(n.childNodes, function(n) n.nodeValue); 
    } 
}); 

Ils chargent dans leur entrée à l'aide pv.dom (obj), puis juste récursive calculer les sommes. En termes plus généraux, vous pouvez utiliser cette interface pour affecter les valeurs que vous voulez dans la fonction que vous passez à visitAfter