sync x axes on top and bottom


I have created a plot where I have time in minutes at the
bottom x-axis. I have another axis with clock-time (hh:mm) at the top
x-axis. I use SpanSelector to zoom in the x-axis only. Whenever I
zoom in or zoom out on the minute axis I would like to sync the hh:mm
axis as well. I used xticks =[0].xaxis.get_ticklocs() to get
the tick locations on the minute axis and then plot the labels at the
corresponding tick locations on the hh:mm axis. The behavior during
zooms is not what I was expecting. When the plot is first created the
tick locations on both axes are correct and they are as follows

0.0 07:51:08
50.0 08:41:08
100.0 09:31:08
150.0 10:21:08
200.0 11:11:08
250.0 12:01:08
300.0 12:51:08

After zoom in the reported tick locations are as follows

30.0 08:21:08


90.0 09:21:08
120.0 09:51:08
150.0 10:21:08
180.0 10:51:08
210.0 11:21:08

the bottom minute axis shows 60, 90, 120, 150, 180. Because the span
starts at 31.5 minutes and ends at 185 minutes. Therefore, the bottom
axis does not draw the 30 and 210 ticks. However, get_ticklocs() gets
the 30 and 210 min values and the hh:mm axis is drawn out of sync.

So now my question is: is there a method that only returns the tick locations that are actually drawn on the plot?