Revision: 7601
          http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7601&view=rev
Author:   jdh2358
Date:     2009-08-30 16:25:46 +0000 (Sun, 30 Aug 2009)

Log Message:
-----------
Merged revisions 7598,7600 via svnmerge from 
https://matplotlib.svn.sourceforge.net/svnroot/matplotlib/branches/v0_99_maint

........
  r7598 | jdh2358 | 2009-08-30 08:35:12 -0500 (Sun, 30 Aug 2009) | 1 line
  
  applied Gael's ginput patch
........
  r7600 | jdh2358 | 2009-08-30 11:22:38 -0500 (Sun, 30 Aug 2009) | 1 line
  
  some unit cleanup; fix sf bug 2846058
........

Modified Paths:
--------------
    trunk/matplotlib/examples/units/annotate_with_units.py
    trunk/matplotlib/examples/units/bar_demo2.py
    trunk/matplotlib/examples/units/radian_demo.py
    trunk/matplotlib/lib/matplotlib/axes.py
    trunk/matplotlib/lib/matplotlib/blocking_input.py
    trunk/matplotlib/lib/matplotlib/collections.py
    trunk/matplotlib/lib/matplotlib/figure.py

Property Changed:
----------------
    trunk/matplotlib/


Property changes on: trunk/matplotlib
___________________________________________________________________
Modified: svnmerge-integrated
   - /branches/mathtex:1-7263 /branches/v0_98_5_maint:1-7253 
/branches/v0_99_maint:1-7590
   + /branches/mathtex:1-7263 /branches/v0_98_5_maint:1-7253 
/branches/v0_99_maint:1-7600

Modified: trunk/matplotlib/examples/units/annotate_with_units.py
===================================================================
--- trunk/matplotlib/examples/units/annotate_with_units.py      2009-08-30 
16:22:38 UTC (rev 7600)
+++ trunk/matplotlib/examples/units/annotate_with_units.py      2009-08-30 
16:25:46 UTC (rev 7601)
@@ -1,8 +1,7 @@
-
-import pylab
+import matplotlib.pyplot as plt
 from basic_units import cm
 
-fig = pylab.figure()
+fig = plt.figure()
 ax = fig.add_subplot(111)
 
 
@@ -23,5 +22,5 @@
 
 ax.set_xlim(0*cm, 4*cm)
 ax.set_ylim(0*cm, 4*cm)
-pylab.show()
+plt.show()
 

Modified: trunk/matplotlib/examples/units/bar_demo2.py
===================================================================
--- trunk/matplotlib/examples/units/bar_demo2.py        2009-08-30 16:22:38 UTC 
(rev 7600)
+++ trunk/matplotlib/examples/units/bar_demo2.py        2009-08-30 16:25:46 UTC 
(rev 7601)
@@ -25,11 +25,11 @@
 
 ax3 = fig.add_subplot(2,2,3)
 ax3.bar(cms, cms, bottom=bottom, width=width, xunits=inch, yunits=cm)
-ax3.set_xlim(3, 6)  # scalars are interpreted in current units
+ax3.set_xlim(2, 6)  # scalars are interpreted in current units
 
 ax4 = fig.add_subplot(2,2,4)
 ax4.bar(cms, cms, bottom=bottom, width=width, xunits=inch, yunits=inch)
 #fig.savefig('simple_conversion_plot.png')
-ax4.set_xlim(3*cm, 6*cm) # cm are converted to inches
+ax4.set_xlim(2*cm, 6*cm) # cm are converted to inches
 
 show()

Modified: trunk/matplotlib/examples/units/radian_demo.py
===================================================================
--- trunk/matplotlib/examples/units/radian_demo.py      2009-08-30 16:22:38 UTC 
(rev 7600)
+++ trunk/matplotlib/examples/units/radian_demo.py      2009-08-30 16:25:46 UTC 
(rev 7601)
@@ -7,15 +7,15 @@
 from basic_units import radians, degrees, cos
 from matplotlib.pyplot import figure, show
 
-x = np.arange(0, 15, 0.01) * radians
+x = [val*radians for val in np.arange(0, 15, 0.01)]
 
 fig = figure()
 fig.subplots_adjust(hspace=0.3)
 
 ax = fig.add_subplot(211)
-ax.plot(x, cos(x), xunits=radians)
+line1, = ax.plot(x, cos(x), xunits=radians)
 
 ax = fig.add_subplot(212)
-ax.plot(x, cos(x), xunits=degrees)
+line2, = ax.plot(x, cos(x), xunits=degrees)
 
 show()

Modified: trunk/matplotlib/lib/matplotlib/axes.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/axes.py     2009-08-30 16:22:38 UTC (rev 
7600)
+++ trunk/matplotlib/lib/matplotlib/axes.py     2009-08-30 16:25:46 UTC (rev 
7601)
@@ -203,11 +203,25 @@
         if self.axes.xaxis is not None and self.axes.yaxis is not None:
             bx = self.axes.xaxis.update_units(x)
             by = self.axes.yaxis.update_units(y)
-            if bx:
-                x = self.axes.convert_xunits(x)
-            if by:
-                y = self.axes.convert_yunits(y)
 
+           if self.command!='plot':
+                # the Line2D class can handle unitized data, with
+                # support for post hoc unit changes etc.  Other mpl
+                # artists, eg Polygon which _process_plot_var_args
+                # also serves on calls to fill, cannot.  So this is a
+                # hack to say: if you are not "plot", which is
+                # creating Line2D, then convert the data now to
+                # floats.  If you are plot, pass the raw data through
+                # to Line2D which will handle the conversion.  So
+                # polygons will not support post hoc conversions of
+                # the unit type since they are not storing the orig
+                # data.  Hopefully we can rationalize this at a later
+                # date - JDH
+                if bx:
+                    x = self.axes.convert_xunits(x)
+                if by:
+                    y = self.axes.convert_yunits(y)
+
         x = np.atleast_1d(x) #like asanyarray, but converts scalar to array
         y = np.atleast_1d(y)
         if x.shape[0] != y.shape[0]:
@@ -4270,10 +4284,14 @@
         if self.xaxis is not None:
             left = self.convert_xunits( left )
             width = self.convert_xunits( width )
+            if xerr is not None:
+                xerr = self.convert_xunits( xerr )
 
         if self.yaxis is not None:
             bottom = self.convert_yunits( bottom )
             height = self.convert_yunits( height )
+            if yerr is not None:
+                yerr = self.convert_yunits( yerr )
 
         if align == 'edge':
             pass

Modified: trunk/matplotlib/lib/matplotlib/blocking_input.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/blocking_input.py   2009-08-30 16:22:38 UTC 
(rev 7600)
+++ trunk/matplotlib/lib/matplotlib/blocking_input.py   2009-08-30 16:25:46 UTC 
(rev 7601)
@@ -17,9 +17,6 @@
     Note: Subclass of BlockingMouseInput.  Used by clabel
 """
 
-import time
-import numpy as np
-
 from matplotlib import path, verbose
 from matplotlib.cbook import is_sequence_of_strings
 
@@ -151,7 +148,7 @@
         button = event.button
 
         if button == self.button_pop:
-            self.mouse_event_pop(event,-1)
+            self.mouse_event_pop(event)
         elif button == self.button_stop:
             self.mouse_event_stop(event)
         else:
@@ -162,7 +159,7 @@
         Process a key click event.  This maps certain keys to appropriate
         mouse click events.
         '''
-        
+
         event = self.events[-1]
         key = event.key.lower()
 

Modified: trunk/matplotlib/lib/matplotlib/collections.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/collections.py      2009-08-30 16:22:38 UTC 
(rev 7600)
+++ trunk/matplotlib/lib/matplotlib/collections.py      2009-08-30 16:25:46 UTC 
(rev 7601)
@@ -819,7 +819,9 @@
     def set_segments(self, segments):
         if segments is None: return
         _segments = []
+
         for seg in segments:
+
             if not np.ma.isMaskedArray(seg):
                 seg = np.asarray(seg, np.float_)
             _segments.append(seg)

Modified: trunk/matplotlib/lib/matplotlib/figure.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/figure.py   2009-08-30 16:22:38 UTC (rev 
7600)
+++ trunk/matplotlib/lib/matplotlib/figure.py   2009-08-30 16:25:46 UTC (rev 
7601)
@@ -12,12 +12,11 @@
 
 """
 import numpy as np
-import time
 
 import artist
 from artist import Artist, allow_rasterization
 from axes import Axes, SubplotBase, subplot_class_factory
-from cbook import flatten, allequal, Stack, iterable, dedent
+from cbook import flatten, allequal, Stack, iterable
 import _image
 import colorbar as cbar
 from image import FigureImage
@@ -1118,6 +1117,12 @@
 
         Right clicking cancels last input.
 
+        The buttons used for the various actions (adding points, removing
+        points, terminating the inputs) can be overriden via the
+        arguments *mouse_add*, *mouse_pop* and *mouse_stop*, that give
+        the associated mouse button: 1 for left, 2 for middle, 3 for
+        right.
+
         The keyboard can also be used to select points in case your mouse
         does not have one or more of the buttons.  The delete and backspace
         keys act like right clicking (i.e., remove last point), the enter key


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

------------------------------------------------------------------------------
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-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/matplotlib-checkins

Reply via email to