       @highlightCurve(entry.xL,entry.xR)
 
   highlightCurve: (xLeft,xRight) ->
-    # console.log 'highlightCurve()'
-    for i in [0...@dataLength]
-      if @data.x[i] >= xLeft and @data.x[i] <= xRight
-        x = ((+@data.x[i]+@toDays(@leftPadding)-@xMin)/(@xMax-@xMin)) * (@canvas.width-@leftPadding)
-        y = ((+@data.y[i]-@yMin)/(@yMax-@yMin)) * @canvas.height
-        y = -y + @canvas.height # flip y-values
-        @ctx.beginPath()
-        @ctx.fillStyle = "rgba(252, 69, 65, 1.0)" #"#fc4541"
-        @ctx.fillRect(x,y,2,2)
-    return
+    @highlights.push {'xLeft': xLeft, 'xRight': xRight}
 
   plotPoints: (xMin = @smallestX, xMax = @largestX, yMin = @smallestY, yMax = @largestY) ->
     # console.log 'plotPoints(): [',xMin,',',xMax,']'

    @scale = (parseFloat(@largestX) - parseFloat(@smallestX)) / (parseFloat(@xMax) - parseFloat(@xMin))
    @rescaleMarks(xMin, xMax)

    return

  rescaleMarks: (xMin, xMax) ->

    @smallestY = Math.min @data.y...
    @largestX  = Math.max @data.x...
    @largestY  = Math.max @data.y...

    @highlights = []

    @dataLength = Math.min @data.x.length, @data.y.length

