In hover_label_test.js#L20 the tests there have evt.clientX and evt.clientY, but graph_interact.js#L417 means that if evt.target is not set, then xpx and ypx will be used, and since they are unset, half the length of the axis is used. Since clientX and clientY were meant to be set to half of the graph anyways, it winds up being the same thing, but for different reasons.