         value_max = Math.max value, value_max
         {value, time: time, x: x(time), original: datapoint}
       bisector = d3.bisector (d) -> d.time
-      lineValues = expand_line_values values
-      scatterValues = filter_scatter_values values
       lineMode =
         if params.areaMode is 'all' or params.areaMode is 'stacked'
           'area'

  if segment_length is 1
    result.push previous
  result

      value_min = Math.round(value_min) - 1
      value_max = Math.round(value_max) + 1
    y.domain [params.yMin ? value_min, params.yMax ? value_max]

    _.each targets, (target) ->
      {values} = target
      _.each values, (v) ->
        if v.value?
          v.y = y v.value
      target.lineValues = expand_line_values values
      target.scatterValues = filter_scatter_values values

    svg = d3.select(container).append('svg')
        .attr('width', width + margin.left + margin.right)
