I noticed that semilogx and semilogy don't check if the linear axis (y- 
axis for semilogx; x-axis for semilogy) is actually linear. Thus, if I  
call semilogx and then call semilogy *on the same plot*, I end up with  
a loglog plot.

Below is a simple patch. I'm not sure how useful this fix is since  
most people wouldn't want to make these calls on the same plot (since  
the second call would override the first)---I was working  
interactively in IPython so it did make a difference.

Cheers,
-Tony


Index: lib/matplotlib/axes.py
===================================================================
--- lib/matplotlib/axes.py      (revision 7557)
+++ lib/matplotlib/axes.py      (working copy)
@@ -3615,6 +3615,7 @@
               }

          self.set_xscale('log', **d)
+        self.set_yscale('linear')
          b =  self._hold
          self._hold = True # we've already processed the hold
          l = self.plot(*args, **kwargs)
@@ -3665,6 +3666,7 @@
               'nonposy': kwargs.pop('nonposy', 'mask'),
               }
          self.set_yscale('log', **d)
+        self.set_xscale('linear')
          b =  self._hold
          self._hold = True # we've already processed the hold
          l = self.plot(*args, **kwargs)

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

Reply via email to