Thanks for the patch. However, perhaps a more general solution would be to use the Python locale module to format numbers according to different locales. And expose a kwarg select between the user's preferred locale, the current U.S. English-centric defaults as they are now, or an arbitrary locale using an ISO language code. That seems like it could be a better long-term solution, since there are different number formats all over, not just in Germany.
All that said, internationalization is hard -- especially for us sheltered people in the U.S. where the defaults are most often correct. I may be missing an important detail here. Cheers, Mike Thorsten Kranz wrote: > Hi list, Hi Matthias, > > I found another way to deal with this problem. when defining the > colorbar, one can give an additional kwarg "format", so by defining the > kwarg "format=formatter", we solved the problem. > > Anyway, I think an option as Matthias implemented would be very handy > for all those users like us here in Germany who might want to have the > numbers formatted with commata. > > Greetings, > Thorsten > > 2008/1/9, Matthias Michler <[EMAIL PROTECTED] > <mailto:[EMAIL PROTECTED]>>: > > Hello list, > Hello Thorsten, > > On Wednesday 09 January 2008 11:38, Thorsten Kranz wrote: > > I have a question concerning reformatting of axis-ticks via the > > FuncFormatter-class. In german, it's common to use a comma as > separator for > > decimal numbers instead of a dot. To realize it in matplotlib, I do > > something like > > > > >from matplotlib.ticker import FuncFormatter > > > > import pylab > > pylab.figure() > > formatter = FuncFormatter(lambda x,pos: ("%.2f"%x).replace(".",",")) > > ax = pylab.axes() > > ax.xaxis.set_major_formatter(formatter) > > ax.yaxis.set_major_formatter(formatter) > > ax.plot(pylab.arange(0,1,0.1),pylab.arange(0,1,0.1)) > > This works fine for me, > > I had the same idea ;-). The problem is that you have a fixed number > of digits > behind the comma, which is not the desirable behaviour during zoom. > I changed the ticker.py/ axes.py files to circumwait this > disadvantage. I > attached a patch showing my changes and maybe somebody can test it. > You can activate it using: > ax.ticklabel_format(style='comma') > for an ScalarFormatter > > > but I encounter a problem when I do an > > imshow-command with a colorbar. In the imshow-axes, it's o.k., > but for the > > colorbar it doesn't really work. I do > > > > cb = pylab.colorbar() > > cb.ax.yaxis.set_major_formatter(formatter) > > > > and, actually, all dots are replaced by com9mata, but the values > are also > > changed! E.g. instead of the old values (without formatter) from > 0-0.54, > > the > > > > values are increased to 0-0.95. > [...] > > Can anyone explain why it doesn't work out as I expect it to work? > I don't know were the problem comes from. I attached your example in > a slitly > modified version and this shows that the problem is not due to your > special > formatting. It occurs with matplotlib.ticker.ScalarFormatter, too. > > best regards, > Matthias > > > Or is there a better, more standard way to substitute the dots by > commata? > > > > Thanks, > > Thorsten > > ------------------------------------------------------------------------- > Check out the new SourceForge.net Marketplace. > It's the best place to buy or sell services for > just about anything Open Source. > > http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace > _______________________________________________ > Matplotlib-users mailing list > Matplotlib-users@lists.sourceforge.net > <mailto:Matplotlib-users@lists.sourceforge.net> > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > <https://lists.sourceforge.net/lists/listinfo/matplotlib-users> > > > > > ------------------------------------------------------------------------ > > ------------------------------------------------------------------------- > Check out the new SourceForge.net Marketplace. > It's the best place to buy or sell services for > just about anything Open Source. > http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace > > > ------------------------------------------------------------------------ > > _______________________________________________ > Matplotlib-users mailing list > Matplotlib-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/matplotlib-users -- Michael Droettboom Science Software Branch Operations and Engineering Division Space Telescope Science Institute Operated by AURA for NASA ------------------------------------------------------------------------- Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace _______________________________________________ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users