       # And here we have the label. We use a +svg:text+ element that will then
       # hold a +tspan+ element for each line
       #
-      @nodes.append("svg:text").
+      nodes.append("svg:text").
         attr("class", "label").
         attr("x", 5).
         attr("y", 10).
         each(@add_label) # call() passes the entire collection
+
+      return nodes
 
     # adding multiline labels is harder than you would expect, let's move this
     # logic to a separate method.

        append("svg:svg").
        attr("height", @height).
        attr("width", @width)

      colors = d3.scale.category20()

      # links are treated as a group made of a link path and label text element
      #
      @links = @svg.selectAll('g.link').
        data(@module.links.models, (d) -> d.cid).
        enter().
        append("svg:g").

        on("mouseout", @node_mouseout)
      # link labels
      #
      links.append("svg:text").
      attr("class", "link_label").
      attr("x", (d) => @x d.left_x()).
      attr("y", (d) => @y d.left_y()).
