The code is rather slow. It requires to be compiled with the "Speed" option.
I do not know why compiling with "Debug" and "Speed" I get different initial screen (using MinGW):
Zooming enough the horizontal axis numbers get mixed between them. It would be very good to avoid that by for example limiting the number of numbers in horizontal axis (just to choose something not perfect but simple)
I think that the control would be more intuitive if the zoom wold be done by rolling the center wheel of the mouse