2013-04-06 15 views
5

Jak wyświetlić węzły jako różne symbole w bibliotece kierowanej przez d3.js? Chciałem zaimplementować coś podobnego do tego, co napisałem poniżej:Różne symbole węzłów dla kierowanego siłą d3.js wykresu

var node = svg.selectAll(".node") 
     .data(graph.nodes) 
    .enter().append(function(d){return d.shape;}) 
     .attr("class", "node") 
     .attr("r", 5) 
     .style("fill", function(d) { return color(d.group); }) 
     .call(force.drag); 

Każdy węzeł miałby zakodowany kształt („rect”, „koło”, etc.). Jednakże pojawia się błąd:

Uncaught TypeError: Object function (d){return "circle";} has no method 'indexOf' 

Inne pytanie mam związane z tym brzmi: w jaki sposób przełączać między stosując różne atrybuty dla każdego kształtu? Kręgi wymagają udoskonalenia atrybutu "r", ale prostokąty wymagają "wysokości" i "szerokości". Dzięki!

Odpowiedz