¿Cómo linebreak un texto svg en javascript?

Estoy empezando con d3.js, y estoy tratando de crear un gráfico de red en el que cada círculo contenga una etiqueta.

Lo que quiero es una línea de romper un texto svg.

Lo que estoy tratando de hacer es dividir el texto en múltiples<tspan>s, cada uno con x = "0" y la variable "y" para simular líneas de texto reales. El código que he escrito da un resultado inesperado.

var text = svg.selectAll("text").data(force.nodes()).enter().append("text");

text       
 .text(function (d) {
 arr = d.name.split(" ");
 var arr = d.name.split(" ");
 if (arr != undefined) {
  for (i = 0; i < arr.length; i++) {
   text.append("tspan")
    .text(arr[i])
    .attr("class", "tspan" + i);
  }
 }
});

En este código, estoy dividiendo la cadena de texto por espacios en blanco y agregando cada cadena dividida a tspan. Pero el texto que pertenece a otro círculo también se muestra en cada círculo. ¿Cómo superar este problema?

Aquí hay un JSFIDDLEhttp://jsfiddle.net/xhNXS/ con solo texto svg

Aquí hay un JSFIDDLEhttp://jsfiddle.net/2NJ25/16/ mostrando mi problema con tspan.

Respuestas a la pregunta(1)

Su respuesta a la pregunta