Hi Tim,

Hi all,

Currently when plotting data with large numbers, the scale on each axis is

done in scientific notation, so for example you might get ticks of 1, 2, 3

then a x10^5 to indicate that it's actually 100000, 200000, 300000.

While this is a rather nice feature, I find it quite difficult to wrap my

head around numbers which aren't of the form x10^(3n). Is there some way

to change the default behaviour so that in the example above it would give

100, 200, 300 x10^3, etc?

I think your suggestion is a good one.

Try replacing ticker.ScalarFormatter._set_orderOfMagnitude with this:

def _set_orderOfMagnitude(self,range):

# if scientific notation is to be used, find the appropriate exponent

# if using a numerical offset, find the exponent after applying the offset

locs = absolute(self.locs)

if self.offset: self.orderOfMagnitude = math.floor(math.log10(range)/3)*3

else:

if locs[0] > locs[-1]: val = locs[0]

else: val = locs[-1]

if val == 0: oom = 0

else: self.orderOfMagnitude = math.floor(math.log10(val)/3)*3

I'm deep in the process of writing my thesis, and won't have time to test it. Would you?

Darren

## ···

On Monday 04 July 2005 10:26 pm, Tim Leslie wrote: