Tick generator using interval.

Close #1166.
so should it be in `Plottable.Scale` module?