MATLAB: Increasing Decimal Point in Plot

axisdecimal pointplotresolution

I'm trying to plot a 10 million point data and the x-axis covers a range of 1 (i.e. 0 to 1). As I zoom in to view data, the x-axis label doesn't provide me with enough resolution. It's stuck at 4 decimal points while I need 7. I know one common solution is to set the gca xticklabel using a sprintf generated axis data. I've tried that but that only works when no zooming is involved. The axis values are stuck at the original no matter how much I zoom in.
So my question is how do I increase the decimal point of the axis label without resorting to using sprintf?
Would appreciate any help!

Best Answer

If you're using release R2015b or later, set the ruler's TickLabelFormat property, described in the Tick Values and Labels section of the numeric ruler properties documentation page.
In earlier releases, call zoom with an output and set that output's ActionPostCallback property to a function that updates the tick labels. See example 5 on the documentation page for zoom for an example you can adapt.