code: function () {
  		var series = this,
  			chart = series.chart,
  			pointer = chart.pointer,
  			cursor = series.options.cursor,
  			css = cursor && { cursor: cursor },
  			onMouseOver = function (e) {
  				var target = e.target,
  					point;
  
  				if (chart.hoverSeries !== series) {
  					series.onMouseOver();
  				}
  				while (target && !point) {
  					point = target.point;
  					target = target.parentNode;
  				}
  				if (point !== UNDEFINED && point !== chart.hoverPoint) { // undefined on graph in scatterchart
  					point.onMouseOver(e);
  				}
  			};
  
  		// Add reference to the point
  		each(series.points, function (point) {
  			if (point.graphic) {
  				point.graphic.element.point = point;
  			}
  			if (point.dataLabel) {
  				point.dataLabel.element.point = point;
  			}
  		});
  
  		// Add the event listeners, we need to do this only once
  		if (!series._hasTracking) {
  			each(series.trackerGroups, function (key) {
  				if (series[key]) { // we don't always have dataLabelsGroup
  					series[key]
  						.addClass(PREFIX + 'tracker')
  						.on('mouseover', onMouseOver)
  						.on('mouseout', function (e) { pointer.onTrackerMouseOut(e); })
  						.css(css);
  					if (hasTouch) {
  						series[key].on('touchstart', onMouseOver);
  					}
  				}
  			});
  			series._hasTracking = true;
  		}
  	}
docs: Add tracking event listener to the series group, so the point graphics
  themselves act as trackers