LinearLocator and digit precision

Hi again,

this is my second question related to the figure located at:

The figure was generated using an instance of the following RunContour class:

class RunFigure:
    """ Une figure relative à un unique run """
    def __init__(self,run):
        """ On spécifie le run, soit par son nombre nb, soit directement """ = run
        # pour fichier de sortie
        # Titre de la figure
        self.figtitle="Run %04d - %s"%(,
    def plot(self):
    def filename(self):
        return '/home/ngirard/out/%04d_%s.png'%(,self.plotname)
    def save(self):

class RunContour(RunFigure):
    def __init__(self,run,vals=['y1'],max=None,**kwargs):
        #self.max = max or
        # pour fichier de sortie
        self.orientation = 'landscape'
        r =
        self.vals = [r.y[0],r.y[2],r.y[4],r.y[6],r.p,r.q,]
        self.valnames = [r"\rho",r"v_z",r"B_z",r"I",r"P",r"Q",r"\Omega"]
    def plot(self):
        nbvals = len(self.vals)
        plotLocations = ["1%d%d"%(nbvals,i+1) for i in range(nbvals)]
        titles = [r"$%s$"%n for n in self.valnames]
        for val in self.vals:
            plotLocation = plotLocations.pop(0)
            if first:
                ax =subplot(plotLocation,sharex=ax1,sharey=ax1)
                setp(ax.get_yticklabels(), visible=False)
                setp(ax.get_xticklabels(), visible=False)
            cb = colorbar(orientation='horizontal')

On to my question:
Note that I specified a linear locator for the x axis of the 1st plot, and for
the x axis of the colorbars using the same code:


However all colorbars ticks are formatted with a 2 digit precision whereas the
ticks of the 1st fig. xaxis are formatted with a 3 digit precision.

Why this discrepancy ?

PS: please don't hesitate to give me any advice to enhance the above code if
you wish !

Thanks in advance,