From: <md...@us...> - 2007-09-26 14:09:29
|
Revision: 3897 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=3897&view=rev Author: mdboom Date: 2007-09-26 07:08:12 -0700 (Wed, 26 Sep 2007) Log Message: ----------- Fix log transforms a little. Modified Paths: -------------- branches/transforms/lib/matplotlib/scale.py branches/transforms/lib/matplotlib/transforms.py Modified: branches/transforms/lib/matplotlib/scale.py =================================================================== --- branches/transforms/lib/matplotlib/scale.py 2007-09-26 13:55:41 UTC (rev 3896) +++ branches/transforms/lib/matplotlib/scale.py 2007-09-26 14:08:12 UTC (rev 3897) @@ -73,6 +73,36 @@ def inverted(self): return LogScale.Log2Transform() + class NaturalLogTransform(Transform): + input_dims = 1 + output_dims = 1 + def __init__(self): + Transform.__init__(self) + + def is_separable(self): + return True + + def transform(self, a): + return ma.log(ma.masked_where(a <= 0.0, a * npy.e)) + + def inverted(self): + return LogScale.InvertedNaturalLogTransform() + + class InvertedNaturalLogTransform(Transform): + input_dims = 1 + output_dims = 1 + def __init__(self): + Transform.__init__(self) + + def is_separable(self): + return True + + def transform(self, a): + return ma.power(npy.e, a) / npy.e + + def inverted(self): + return LogScale.Log2Transform() + class LogTransform(Transform): input_dims = 1 output_dims = 1 @@ -84,14 +114,12 @@ return True def transform(self, a): - if len(a) > 10: - print "Log Transforming..." return ma.log(ma.masked_where(a <= 0.0, a * self._base)) / npy.log(self._base) def inverted(self): return LogScale.InvertedLogTransform(self._base) - class InvertedLog2Transform(Transform): + class InvertedLogTransform(Transform): input_dims = 1 output_dims = 1 def __init__(self, base): @@ -113,7 +141,8 @@ self._transform = self.Log10Transform() elif base == 2.0: self._transform = self.Log2Transform() - # MGDTODO: Natural log etc. + elif base == npy.e: + self._transform = self.NaturalLogTransform() else: self._transform = self.LogTransform(base) Modified: branches/transforms/lib/matplotlib/transforms.py =================================================================== --- branches/transforms/lib/matplotlib/transforms.py 2007-09-26 13:55:41 UTC (rev 3896) +++ branches/transforms/lib/matplotlib/transforms.py 2007-09-26 14:08:12 UTC (rev 3897) @@ -1069,15 +1069,6 @@ return CompositeGenericTransform(a, b) -class LogTransform(Transform): - input_dims = 1 - output_dims = 1 - - def transform(self, a): - m = ma.masked_where(a < 0, a) - return npy.log10(m) - - class TestPolarTransform(Transform): input_dims = 2 output_dims = 2 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |