tick generation logic for binned variables

generate ticks with spacing a multiple of the binwidth for binned variables
this should fix the bug where colour is equal to bin(boolean, 1) where
boolean is either 0 or 1. In this case, only ticks should be 0 and 1 and no
other values

reviewer: raymond