Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 7a34814

Browse files
committed
Fix log transforms a little.
svn path=/branches/transforms/; revision=3897
1 parent 97bd353 commit 7a34814

2 files changed

Lines changed: 33 additions & 13 deletions

File tree

lib/matplotlib/scale.py

Lines changed: 33 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,36 @@ def transform(self, a):
7373
def inverted(self):
7474
return LogScale.Log2Transform()
7575

76+
class NaturalLogTransform(Transform):
77+
input_dims = 1
78+
output_dims = 1
79+
def __init__(self):
80+
Transform.__init__(self)
81+
82+
def is_separable(self):
83+
return True
84+
85+
def transform(self, a):
86+
return ma.log(ma.masked_where(a <= 0.0, a * npy.e))
87+
88+
def inverted(self):
89+
return LogScale.InvertedNaturalLogTransform()
90+
91+
class InvertedNaturalLogTransform(Transform):
92+
input_dims = 1
93+
output_dims = 1
94+
def __init__(self):
95+
Transform.__init__(self)
96+
97+
def is_separable(self):
98+
return True
99+
100+
def transform(self, a):
101+
return ma.power(npy.e, a) / npy.e
102+
103+
def inverted(self):
104+
return LogScale.Log2Transform()
105+
76106
class LogTransform(Transform):
77107
input_dims = 1
78108
output_dims = 1
@@ -84,14 +114,12 @@ def is_separable(self):
84114
return True
85115

86116
def transform(self, a):
87-
if len(a) > 10:
88-
print "Log Transforming..."
89117
return ma.log(ma.masked_where(a <= 0.0, a * self._base)) / npy.log(self._base)
90118

91119
def inverted(self):
92120
return LogScale.InvertedLogTransform(self._base)
93121

94-
class InvertedLog2Transform(Transform):
122+
class InvertedLogTransform(Transform):
95123
input_dims = 1
96124
output_dims = 1
97125
def __init__(self, base):
@@ -113,7 +141,8 @@ def __init__(self, base=10):
113141
self._transform = self.Log10Transform()
114142
elif base == 2.0:
115143
self._transform = self.Log2Transform()
116-
# MGDTODO: Natural log etc.
144+
elif base == npy.e:
145+
self._transform = self.NaturalLogTransform()
117146
else:
118147
self._transform = self.LogTransform(base)
119148

lib/matplotlib/transforms.py

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1069,15 +1069,6 @@ def composite_transform_factory(a, b):
10691069
return CompositeGenericTransform(a, b)
10701070

10711071

1072-
class LogTransform(Transform):
1073-
input_dims = 1
1074-
output_dims = 1
1075-
1076-
def transform(self, a):
1077-
m = ma.masked_where(a < 0, a)
1078-
return npy.log10(m)
1079-
1080-
10811072
class TestPolarTransform(Transform):
10821073
input_dims = 2
10831074
output_dims = 2

0 commit comments

Comments
 (0)