 
         api.update()
 
-      plotSvg = selection.selectAll ".plot.planck"
+      svg = selection.selectAll ".plot.planck"
         .data [1]
-        .call (plotSvg) ->
-          plotSvg = plotSvg.enter()
+        .call (svg) ->
+          svg = svg.enter()
             .append "svg"
             .classed plot: true
 
-          plotSvg.append "defs"
+          svg.append "defs"
             .append "clipPath"
               .classed "planck-path": true
               .attr id: "planckPath"
               .append "rect"
 
-          plotSvg.append "g"
+          svg.append "g"
             .classed plots: true
             .attr "clip-path": "url(#planckPath)"
             .call (plots) ->

                    api.update()
                .append "path"

          plotSvg.append "g"
            .classed axis: true, x: true

          plotSvg.append "g"
            .classed axis: true, y: true

          plotSvg.append "g"
            .classed label: true, y: true
            .append "text"
            .attr "text-anchor": "middle", dy: ".71em"

                .text " λ"


          svg.append "g"
            .classed wavelength: true, interactive: true
            .attr "text-anchor": "middle"
            .append "text"

      # harvest selectors just initialized
      plots = svg.select ".plots"
      solutions = plots.select ".solutions"
      plotsBg = plots.select ".bg"
      defs = svg.select "defs"
      clip = defs.select ".planck-path rect"
      el_xAxis = svg.select ".axis.x"
      el_yAxis = svg.select ".axis.y"
      yLabel = svg.select ".label.y text"
      xLabel = svg.select ".label.x text"
      wavelengthLabel = svg.select ".wavelength.interactive"
      wienSeries = plots.select ".wien"


