2012-04-06 2 views
2

Nach einer Demonstration von d3 (http://goo.gl/lN7Jo) versuche ich einen kraftgesteuerten Graphen zu erstellen. Ich versuche, meinen Knotenelementen ein Titelattribut hinzuzufügen, das dadurch erstellt wird.Wie füge ich ein Titelattribut zu den Knoten meines kraftgesteuerten Diagramms hinzu, das von d3 generiert wurde?

var node = svg.selectAll("circle.node") 
     .data(json.nodes) 
    .enter().append("circle") 
     .attr("class", "node") 

     // here is how I try to add a title. 
     .attr("title", "my title") 

     .attr("r", 5) 
     .style("fill", function(d) { return color(d.group); }) 
     .call(force.drag); 

Die Knoten meines Diagramms zeigen jedoch kein Titelattribut an. Was ist der richtige Weg? Vielen Dank.

Antwort

2

In SVG title Attribute wirklich Elemente sind, die ihre Eltern beschreiben, so würden Sie das Beispiel folgen müssen Sie verknüpft ...

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

node.append("title") 
    .text("my text"); 
+0

Arbeitete für mich. Außerdem können Sie den Namen des Nick als Titel anzeigen. –

0

diesen Code hinzufügen rechts unten, wo Sie Ihre Knoten initialisieren. Dadurch wird jedem Knoten ein Hard-Code-Text als Titel hinzugefügt.

node.append("title") 
    .text("my text"); 

Wenn Sie name als Titel hinzufügen möchten, dies zu tun;

node.append("title") 
    .text(function (d) { 
      return d.name; 
     }) 
Verwandte Themen