public void handleEvent(Event event)
{
for (IAxis axis : chart.getAxisSet().getYAxes())
{
double coordinate = axis.getDataCoordinate(event.y);
Range range = axis.getRange();
double lower = 0;
double upper = 0;
if (event.count > 0)
{
lower = range.lower + 2 * ZOOM_RATIO * (coordinate - range.lower);
upper = range.upper + 2 * ZOOM_RATIO * (coordinate - range.upper);
}
else
{
lower = (range.lower - 2 * ZOOM_RATIO * coordinate) / (1 - 2 * ZOOM_RATIO);
upper = (range.upper - 2 * ZOOM_RATIO * coordinate) / (1 - 2 * ZOOM_RATIO);
}
axis.setRange(new Range(lower, upper));
}
chart.redraw();
}