function handleMouseMove(e) {
            let [mouseX, mouseY] = getMousePosition(e),
                dataPoint = isHorizontal ? getNearestDataPoint2(mouseY) : getNearestDataPoint(mouseX),
                x,
                y;

            if (dataPoint) {
                // Move verticalMarker to that datapoint
                if (isHorizontal) {
                    x = mouseX - margin.left;
                    y = yScale(dataPoint.key) + yScale.bandwidth() / 2;
                } else {
                    x = xScale(dataPoint.key) + xScale2(dataPoint[groupLabel]);
                    y = mouseY - margin.bottom;
                }
                moveTooltipOriginXY(x, y);

                // Emit event with xPosition for tooltip or similar feature
                dispatcher.call('customMouseMove', e, dataPoint, categoryColorMap, x, y);
            }
        }
MouseMove handler, calculates the nearest dataPoint to the cursor
and updates metadata related to it
@param  {obj} e the fired event
@private