From: <jr...@us...> - 2007-07-16 22:19:27
|
Revision: 3546 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=3546&view=rev Author: jrevans Date: 2007-07-16 15:19:24 -0700 (Mon, 16 Jul 2007) Log Message: ----------- Changed what appeared to be a typo where x-axis values were being converted using the y-axis unit converters. Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2007-07-16 19:40:34 UTC (rev 3545) +++ trunk/matplotlib/lib/matplotlib/axes.py 2007-07-16 22:19:24 UTC (rev 3546) @@ -1507,7 +1507,7 @@ if xmin is not None: xmin = self.convert_xunits(xmin) if xmax is not None: - xmax = self.convert_yunits(xmax) + xmax = self.convert_xunits(xmax) old_xmin,old_xmax = self.get_xlim() if xmin is None: xmin = old_xmin This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ef...@us...> - 2007-07-17 22:33:44
|
Revision: 3555 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=3555&view=rev Author: efiring Date: 2007-07-17 15:33:42 -0700 (Tue, 17 Jul 2007) Log Message: ----------- Bugfix in changed import strategy Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2007-07-17 22:15:44 UTC (rev 3554) +++ trunk/matplotlib/lib/matplotlib/axes.py 2007-07-17 22:33:42 UTC (rev 3555) @@ -9,19 +9,19 @@ rcParams = matplotlib.rcParams from matplotlib import artist as martist -from matplotlib import agg +from matplotlib import agg from matplotlib import axis as maxis -from matplotlib import cbook +from matplotlib import cbook from matplotlib import collections as mcoll from matplotlib import colors as mcolors from matplotlib import contour as mcontour from matplotlib import dates as mdates -from matplotlib import font_manager +from matplotlib import font_manager from matplotlib import image as mimage from matplotlib import legend as mlegend from matplotlib import lines as mlines -from matplotlib import mlab -from matplotlib import cm +from matplotlib import mlab +from matplotlib import cm from matplotlib import patches as mpatches from matplotlib import quiver as mquiver from matplotlib import table as mtable @@ -56,8 +56,6 @@ return args mask = reduce(ma.mask_or, masks) margs = [] - is_string_like = mpl_cbook.is_string_like - iterable = mpl_cbook.iterable for x in args: if (not is_string_like(x) and iterable(x) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ef...@us...> - 2007-07-30 23:05:10
|
Revision: 3641 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=3641&view=rev Author: efiring Date: 2007-07-30 16:05:06 -0700 (Mon, 30 Jul 2007) Log Message: ----------- bar plotting patch by Michael Forbes Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2007-07-30 21:41:09 UTC (rev 3640) +++ trunk/matplotlib/lib/matplotlib/axes.py 2007-07-30 23:05:06 UTC (rev 3641) @@ -3557,7 +3557,21 @@ barcols = [] caplines = [] + lines_kw = {'label':'_nolegend_'} + if 'linewidth' in kwargs: + lines_kw['linewidth']=kwargs['linewidth'] + if 'lw' in kwargs: + lines_kw['lw']=kwargs['lw'] + if capsize > 0: + plot_kw = { + 'ms':2*capsize, + 'label':'_nolegend_'} + if 'markeredgewidth' in kwargs: + plot_kw['markeredgewidth']=kwargs['markeredgewidth'] + if 'mew' in kwargs: + plot_kw['mew']=kwargs['mew'] + if xerr is not None: if len(xerr.shape) == 1: left = x-xerr @@ -3566,12 +3580,10 @@ left = x-xerr[0] right = x+xerr[1] - barcols.append( self.hlines(y, left, right, label='_nolegend_' )) + barcols.append( self.hlines(y, left, right, **lines_kw ) ) if capsize > 0: - caplines.extend( - self.plot(left, y, 'k|', ms=2*capsize, label='_nolegend_') ) - caplines.extend( - self.plot(right, y, 'k|', ms=2*capsize, label='_nolegend_') ) + caplines.extend( self.plot(left, y, 'k|', **plot_kw) ) + caplines.extend( self.plot(right, y, 'k|', **plot_kw) ) if yerr is not None: if len(yerr.shape) == 1: @@ -3581,21 +3593,8 @@ lower = y-yerr[0] upper = y+yerr[1] - vlines_kw = {'label':'_nolegend_'} - if 'linewidth' in kwargs: - vlines_kw['linewidth']=kwargs['linewidth'] - if 'lw' in kwargs: - vlines_kw['lw']=kwargs['lw'] - barcols.append( self.vlines(x, lower, upper, **vlines_kw) ) - + barcols.append( self.vlines(x, lower, upper, **lines_kw) ) if capsize > 0: - plot_kw = { - 'ms':2*capsize, - 'label':'_nolegend_'} - if 'markeredgewidth' in kwargs: - plot_kw['markeredgewidth']=kwargs['markeredgewidth'] - if 'mew' in kwargs: - plot_kw['mew']=kwargs['mew'] caplines.extend( self.plot(x, lower, 'k_', **plot_kw) ) caplines.extend( self.plot(x, upper, 'k_', **plot_kw) ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ef...@us...> - 2007-08-17 22:36:08
|
Revision: 3715 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=3715&view=rev Author: efiring Date: 2007-08-17 15:36:01 -0700 (Fri, 17 Aug 2007) Log Message: ----------- Added coll.update(kwargs) to hline method; thanks to Daniel Fish Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2007-08-16 21:57:58 UTC (rev 3714) +++ trunk/matplotlib/lib/matplotlib/axes.py 2007-08-17 22:36:01 UTC (rev 3715) @@ -2345,7 +2345,6 @@ respective values are constant, else the widths of the lines are determined by xmin and xmax - colors is a line collections color args, either a single color or a len(x) list of colors @@ -2370,23 +2369,18 @@ xmin = npy.asarray(xmin) xmax = npy.asarray(xmax) - if len(xmin)!=len(y): raise ValueError, 'xmin and y are unequal sized sequences' if len(xmax)!=len(y): raise ValueError, 'xmax and y are unequal sized sequences' - - - verts = [ ((thisxmin, thisy), (thisxmax, thisy)) for thisxmin, thisxmax, thisy in zip(xmin, xmax, y)] coll = mcoll.LineCollection(verts, colors=colors, linestyle=linestyle, label=label) self.add_collection(coll) + coll.update(kwargs) - - minx = min(xmin.min(), xmax.min()) maxx = max(xmin.max(), xmax.max()) miny = y.min() @@ -2444,8 +2438,6 @@ if len(ymax)==1: ymax = ymax*npy.ones(x.shape, x.dtype) - - if len(ymin)!=len(x): raise ValueError, 'ymin and x are unequal sized sequences' if len(ymax)!=len(x): This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ef...@us...> - 2007-09-10 06:55:11
|
Revision: 3821 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=3821&view=rev Author: efiring Date: 2007-09-09 23:55:10 -0700 (Sun, 09 Sep 2007) Log Message: ----------- Removed obsolete and broken methods from Axes and PolarAxes Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2007-09-10 01:42:39 UTC (rev 3820) +++ trunk/matplotlib/lib/matplotlib/axes.py 2007-09-10 06:55:10 UTC (rev 3821) @@ -1864,31 +1864,6 @@ c =mcolors.colorConverter.to_rgba(c) self._cursorProps = lw, c - - def panx(self, numsteps): - 'Pan the x axis numsteps (plus pan right, minus pan left)' - self.xaxis.pan(numsteps) - xmin, xmax = self.viewLim.intervalx().get_bounds() - self._send_xlim_event() - - def pany(self, numsteps): - 'Pan the x axis numsteps (plus pan up, minus pan down)' - self.yaxis.pan(numsteps) - self._send_ylim_event() - - def zoomx(self, numsteps): - 'Zoom in on the x xaxis numsteps (plus for zoom in, minus for zoom out)' - self.xaxis.zoom(numsteps) - xmin, xmax = self.viewLim.intervalx().get_bounds() - self._send_xlim_event() - - def zoomy(self, numsteps): - 'Zoom in on the x xaxis numsteps (plus for zoom in, minus for zoom out)' - self.yaxis.zoom(numsteps) - self._send_ylim_event() - - - def connect(self, s, func): """ Register observers to be notified when certain events occur. Register @@ -1910,6 +1885,7 @@ def disconnect(self, cid): 'disconnect from the Axes event.' raise DeprecationWarning('use the callbacks CallbackRegistry instance instead') + def get_children(self): 'return a list of child artists' children = [] @@ -5678,38 +5654,14 @@ 'ylabel not implemented' raise NotImplementedError('ylabel not defined for polar axes (yet)') + def set_xlim(self, xmin=None, xmax=None, emit=True, **kwargs): + 'xlim not implemented' + raise NotImplementedError('xlim not meaningful for polar axes') - def set_xlim(self, xmin=None, xmax=None, emit=True): - """ - set the xlimits - ACCEPTS: len(2) sequence of floats - """ - if xmax is None and iterable(xmin): - xmin,xmax = xmin + def set_ylim(self, ymin=None, ymax=None, emit=True, **kwargs): + 'ylim not implemented' + raise NotImplementedError('ylim not meaningful for polar axes') - old_xmin,old_xmax = self.get_xlim() - if xmin is None: xmin = old_xmin - if xmax is None: xmax = old_xmax - - self.viewLim.intervalx().set_bounds(xmin, xmax) - if emit: self._send_xlim_event() - - - def set_ylim(self, ymin=None, ymax=None, emit=True): - """ - set the ylimits - ACCEPTS: len(2) sequence of floats - """ - if ymax is None and iterable(ymin): - ymin,ymax = ymin - - old_ymin,old_ymax = self.get_ylim() - if ymin is None: ymin = old_ymin - if ymax is None: ymax = old_ymax - - self.viewLim.intervaly().set_bounds(ymin, ymax) - if emit: self._send_ylim_event() - def get_xscale(self): 'return the xaxis scale string' return 'polar' @@ -5760,10 +5712,9 @@ """ # this is some discarded code I was using to find the minimum positive # data point for some log scaling fixes. I realized there was a -# cleaner way to do it, but am ke -eping this around as an example for +# cleaner way to do it, but am keeping this around as an example for # how to get the data out of the axes. Might want to make something -# like this a method one day, or better yet make get_verts and Artist +# like this a method one day, or better yet make get_verts an Artist # method minx, maxx = self.get_xlim() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <sa...@us...> - 2007-10-04 21:39:15
|
Revision: 3916 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=3916&view=rev Author: sameerd Date: 2007-10-04 14:39:07 -0700 (Thu, 04 Oct 2007) Log Message: ----------- Fix for "NameError: global name 'ones' is not defined" Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2007-10-04 19:12:20 UTC (rev 3915) +++ trunk/matplotlib/lib/matplotlib/axes.py 2007-10-04 21:39:07 UTC (rev 3916) @@ -2401,9 +2401,9 @@ y = npy.asarray(y) if len(xmin)==1: - xmin = xmin*ones(y.shape, y.dtype) + xmin = xmin*npy.ones(y.shape, y.dtype) if len(xmax)==1: - xmax = xmax*ones(y.shape, y.dtype) + xmax = xmax*npy.ones(y.shape, y.dtype) xmin = npy.asarray(xmin) xmax = npy.asarray(xmax) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jr...@us...> - 2007-10-05 17:01:39
|
Revision: 3921 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=3921&view=rev Author: jrevans Date: 2007-10-05 10:01:36 -0700 (Fri, 05 Oct 2007) Log Message: ----------- Fixed an error in calculating the mid-point of a bar since the values are now lists and not arrays, they need to be iterated to perform the arithmetic. Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2007-10-05 16:29:17 UTC (rev 3920) +++ trunk/matplotlib/lib/matplotlib/axes.py 2007-10-05 17:01:36 UTC (rev 3921) @@ -3262,9 +3262,9 @@ pass elif align == 'center': if orientation == 'vertical': - left = left - width/2. + left = [left[i] - width[i]/2. for i in range(len(left))] elif orientation == 'horizontal': - bottom = bottom-height/2. + bottom = [bottom[i] - height[i]/2. for i in range(len(bottom))] else: raise ValueError, 'invalid alignment: %s' % align This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ef...@us...> - 2007-10-05 22:11:35
|
Revision: 3926 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=3926&view=rev Author: efiring Date: 2007-10-05 15:11:32 -0700 (Fri, 05 Oct 2007) Log Message: ----------- Fixed numpification bug in pcolor argument handling Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2007-10-05 19:37:18 UTC (rev 3925) +++ trunk/matplotlib/lib/matplotlib/axes.py 2007-10-05 22:11:32 UTC (rev 3926) @@ -4408,7 +4408,30 @@ return im + def _pcolorargs(self, funcname, *args): + if len(args)==1: + C = args[0] + numRows, numCols = C.shape + X, Y = npy.meshgrid(npy.arange(numCols+1), npy.arange(numRows+1) ) + elif len(args)==3: + X, Y, C = args + else: + raise TypeError( + 'Illegal arguments to %s; see help(%s)' % (funcname, funcname)) + Nx = X.shape[-1] + Ny = Y.shape[0] + if len(X.shape) <> 2 or X.shape[0] == 1: + x = X.reshape(1,Nx) + X = x.repeat(Ny, axis=0) + if len(Y.shape) <> 2 or Y.shape[1] == 1: + y = Y.reshape(Ny, 1) + Y = y.repeat(Nx, axis=1) + if X.shape != Y.shape: + raise TypeError( + 'Incompatible X, Y inputs to %s; see help(%s)' % (funcname, funcname)) + return X, Y, C + def pcolor(self, *args, **kwargs): """ pcolor(*args, **kwargs): pseudocolor plot of a 2-D array @@ -4520,25 +4543,9 @@ vmax = kwargs.pop('vmax', None) shading = kwargs.pop('shading', 'flat') - if len(args)==1: - C = args[0] - numRows, numCols = C.shape - X, Y = npy.meshgrid(npy.arange(numCols+1), npy.arange(numRows+1) ) - elif len(args)==3: - X, Y, C = args - numRows, numCols = C.shape - else: - raise TypeError, 'Illegal arguments to pcolor; see help(pcolor)' + X, Y, C = self._pcolorargs('pcolor', *args) + Ny, Nx = X.shape - Nx = X.shape[-1] - Ny = Y.shape[0] - if len(X.shape) <> 2 or X.shape[0] == 1: - X = X.ravel().resize((Ny, Nx)) - if len(Y.shape) <> 2 or Y.shape[1] == 1: - Y = Y.ravel().resize((Nx, Ny)).T - - - # convert to MA, if necessary. C = ma.asarray(C) X = ma.asarray(X) @@ -4673,23 +4680,9 @@ shading = kwargs.pop('shading', 'flat') edgecolors = kwargs.pop('edgecolors', 'None') - if len(args)==1: - C = args[0] - numRows, numCols = C.shape - X, Y = npy.meshgrid(npy.arange(numCols+1), npy.arange(numRows+1) ) - elif len(args)==3: - X, Y, C = args - numRows, numCols = C.shape - else: - raise TypeError, 'Illegal arguments to pcolormesh; see help(pcolormesh)' + X, Y, C = self._pcolorargs('pcolormesh', *args) + Ny, Nx = X.shape - Nx = X.shape[-1] - Ny = Y.shape[0] - if len(X.shape) <> 2 or X.shape[0] == 1: - X = X.ravel().resize((Ny, Nx)) - if len(Y.shape) <> 2 or Y.shape[1] == 1: - Y = Y.ravel().resize((Nx, Ny)).T - # convert to one dimensional arrays C = ma.ravel(C[0:Ny-1, 0:Nx-1]) # data point in each cell is value at lower left corner X = X.ravel() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2007-11-09 20:14:52
|
Revision: 4194 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4194&view=rev Author: mdboom Date: 2007-11-09 12:14:29 -0800 (Fri, 09 Nov 2007) Log Message: ----------- Fix exception plotting an errorbar graph with only two data points. Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2007-11-09 20:00:39 UTC (rev 4193) +++ trunk/matplotlib/lib/matplotlib/axes.py 2007-11-09 20:14:29 UTC (rev 4194) @@ -3717,7 +3717,7 @@ plot_kw['mew']=kwargs['mew'] if xerr is not None: - if iterable(xerr) and len(xerr)==2: + if iterable(xerr) and len(xerr)==2 and iterable(xerr[0]) and iterable(xerr[1]): # using list comps rather than arrays to preserve units left = [thisx-thiserr for (thisx, thiserr) in cbook.safezip(x,xerr[0])] right = [thisx+thiserr for (thisx, thiserr) in cbook.safezip(x,xerr[1])] @@ -3751,7 +3751,7 @@ caplines.extend( self.plot(right, y, 'k|', **plot_kw) ) if yerr is not None: - if iterable(yerr) and len(yerr)==2: + if iterable(yerr) and len(yerr)==2 and iterable(yerr[0]) and iterable(yerr[1]): # using list comps rather than arrays to preserve units lower = [thisy-thiserr for (thisy, thiserr) in cbook.safezip(y,yerr[0])] upper = [thisy+thiserr for (thisy, thiserr) in cbook.safezip(y,yerr[1])] This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2007-11-09 20:59:49
|
Revision: 4197 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4197&view=rev Author: mdboom Date: 2007-11-09 12:59:47 -0800 (Fri, 09 Nov 2007) Log Message: ----------- Bugfix: [ 1757315 ] ValueError: Cannot set nonpositive limits with log transform. The axes scales were not getting set back to "linear" when cla() is called, so autoscale_limits gets confused on the next call to plot(). Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2007-11-09 20:37:57 UTC (rev 4196) +++ trunk/matplotlib/lib/matplotlib/axes.py 2007-11-09 20:59:47 UTC (rev 4197) @@ -720,6 +720,8 @@ self.xaxis.cla() self.yaxis.cla() + self.set_xscale('linear') + self.set_yscale('linear') self.dataLim.ignore(1) self.callbacks = cbook.CallbackRegistry(('xlim_changed', 'ylim_changed')) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2007-11-12 18:53:27
|
Revision: 4232 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4232&view=rev Author: mdboom Date: 2007-11-12 10:53:25 -0800 (Mon, 12 Nov 2007) Log Message: ----------- [ 1691298 ] pcolormesh shows empty plot when plotting small time ranges Avoiding downcasting the data before we have to. Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2007-11-12 18:10:25 UTC (rev 4231) +++ trunk/matplotlib/lib/matplotlib/axes.py 2007-11-12 18:53:25 UTC (rev 4232) @@ -4727,7 +4727,7 @@ X = X.ravel() Y = Y.ravel() - coords = npy.zeros(((Nx * Ny), 2), npy.float32) + coords = npy.zeros(((Nx * Ny), 2), X.dtype) coords[:, 0] = X coords[:, 1] = Y This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ds...@us...> - 2007-11-15 21:23:34
|
Revision: 4325 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4325&view=rev Author: dsdale Date: 2007-11-15 13:23:27 -0800 (Thu, 15 Nov 2007) Log Message: ----------- added npy.seterr(invalid='ignore') to beginning of axes.py, to silence repeated warnings created by finding extrema of arrays containing nans (discovered during calls to errorbar) Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2007-11-15 21:13:52 UTC (rev 4324) +++ trunk/matplotlib/lib/matplotlib/axes.py 2007-11-15 21:23:27 UTC (rev 4325) @@ -2,6 +2,7 @@ import math, sys, warnings import numpy as npy +npy.seterr(invalid='ignore') import matplotlib.numerix.npyma as ma @@ -2503,7 +2504,6 @@ self._process_unit_info(xdata=x, ydata=ymin, kwargs=kwargs) - if not iterable(x): x = [x] if not iterable(ymin): ymin = [ymin] if not iterable(ymax): ymax = [ymax] This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ds...@us...> - 2007-11-16 13:16:31
|
Revision: 4329 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4329&view=rev Author: dsdale Date: 2007-11-16 05:16:12 -0800 (Fri, 16 Nov 2007) Log Message: ----------- removed numpy.seterr(invalid='ignore') from axes.py Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2007-11-16 07:47:51 UTC (rev 4328) +++ trunk/matplotlib/lib/matplotlib/axes.py 2007-11-16 13:16:12 UTC (rev 4329) @@ -2,7 +2,6 @@ import math, sys, warnings import numpy as npy -npy.seterr(invalid='ignore') import matplotlib.numerix.npyma as ma This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ef...@us...> - 2007-11-27 02:24:47
|
Revision: 4461 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4461&view=rev Author: efiring Date: 2007-11-26 18:24:22 -0800 (Mon, 26 Nov 2007) Log Message: ----------- Fixed pcolormesh bug Integer X input was causing Y to be turned into an integer as well. Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2007-11-26 23:08:55 UTC (rev 4460) +++ trunk/matplotlib/lib/matplotlib/axes.py 2007-11-27 02:24:22 UTC (rev 4461) @@ -4728,7 +4728,7 @@ X = X.ravel() Y = Y.ravel() - coords = npy.zeros(((Nx * Ny), 2), X.dtype) + coords = npy.zeros(((Nx * Ny), 2), dtype=float) coords[:, 0] = X coords[:, 1] = Y This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jr...@us...> - 2008-01-08 18:57:24
|
Revision: 4811 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4811&view=rev Author: jrevans Date: 2008-01-08 10:57:23 -0800 (Tue, 08 Jan 2008) Log Message: ----------- Added some logic to Axes.bar that will preconvert unitized data before creating the rectangular Patch since not all unitized data can be subtracted with a floating point number (ie. 'left - width') this is especially true with 'time' (time - time = duration). This problem can be seen when passing in a floating-point number for the width, which in-turn should be interpreted to be a number in the units for the axis. This was not being done, and now is. There is probably a better way to handle this. Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2008-01-08 18:45:40 UTC (rev 4810) +++ trunk/matplotlib/lib/matplotlib/axes.py 2008-01-08 18:57:23 UTC (rev 4811) @@ -3264,7 +3264,21 @@ patches = [] + # lets do some conversions now since some types cannot be subtracted uniformly + if self.xaxis is not None: + xconv = self.xaxis.converter + if xconv is not None: + units = self.xaxis.get_units() + left = xconv.convert( left, units ) + width = xconv.convert( width, units ) + if self.yaxis is not None: + yconv = self.yaxis.converter + if yconv is not None : + units = self.yaxis.get_units() + bottom = yconv.convert( bottom, units ) + height = yconv.convert( height, units ) + if align == 'edge': pass elif align == 'center': This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2008-01-22 13:09:31
|
Revision: 4884 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4884&view=rev Author: mdboom Date: 2008-01-22 05:08:27 -0800 (Tue, 22 Jan 2008) Log Message: ----------- Fix relim() to properly ignore existing data. (Thanks Darren Dale). Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2008-01-21 19:08:35 UTC (rev 4883) +++ trunk/matplotlib/lib/matplotlib/axes.py 2008-01-22 13:08:27 UTC (rev 4884) @@ -1201,9 +1201,11 @@ 'recompute the datalimits based on current artists' self.dataLim.ignore(True) for line in self.lines: + self.ignore_existing_data_limits = True self._update_line_limits(line) for p in self.patches: + self.ignore_existing_data_limits = True self._update_patch_limits(p) def update_datalim(self, xys): This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2008-01-23 18:27:20
|
Revision: 4890 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4890&view=rev Author: mdboom Date: 2008-01-23 10:27:05 -0800 (Wed, 23 Jan 2008) Log Message: ----------- Fix relim again (thanks Darren Dale) Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2008-01-23 18:13:40 UTC (rev 4889) +++ trunk/matplotlib/lib/matplotlib/axes.py 2008-01-23 18:27:05 UTC (rev 4890) @@ -1200,12 +1200,11 @@ def relim(self): 'recompute the datalimits based on current artists' self.dataLim.ignore(True) + self.ignore_existing_data_limits = True for line in self.lines: - self.ignore_existing_data_limits = True self._update_line_limits(line) for p in self.patches: - self.ignore_existing_data_limits = True self._update_patch_limits(p) def update_datalim(self, xys): This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ef...@us...> - 2008-01-26 00:09:13
|
Revision: 4895 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4895&view=rev Author: efiring Date: 2008-01-25 16:08:57 -0800 (Fri, 25 Jan 2008) Log Message: ----------- Apply patch by Manuel Metz to scatter docstring. Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2008-01-24 18:15:56 UTC (rev 4894) +++ trunk/matplotlib/lib/matplotlib/axes.py 2008-01-26 00:08:57 UTC (rev 4895) @@ -4145,10 +4145,22 @@ 'p' : pentagram 'h' : hexagon '8' : octagon - - If marker is None and verts is not None, verts is a sequence - of (x,y) vertices for a custom scatter symbol. - + + The marker can also be a tuple (numsides, style, angle), which will + create a custom, regular symbol. + + numsides is the number of sides + + style is the style of the regular symbol: + 0 : a regular polygon + 1 : a star-like symbol + 2 : an asterisk + + angle is the angle of rotation of the symbol + + Finally, marker can be (verts, 0), verts is a sequence of (x,y) + vertices for a custom scatter symbol. + s is a size argument in points squared. Any or all of x, y, s, and c may be masked arrays, in which This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2008-01-29 20:19:29
|
Revision: 4906 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4906&view=rev Author: mdboom Date: 2008-01-29 12:19:27 -0800 (Tue, 29 Jan 2008) Log Message: ----------- Make shared axes work when calling Axes.axis() (Thanks Jorgen Stenarson) Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2008-01-29 20:18:21 UTC (rev 4905) +++ trunk/matplotlib/lib/matplotlib/axes.py 2008-01-29 20:19:27 UTC (rev 4906) @@ -1049,7 +1049,7 @@ try: v[0] except IndexError: - emit = kwargs.get('emit', False) + emit = kwargs.get('emit', True) xmin = kwargs.get('xmin', None) xmax = kwargs.get('xmax', None) @@ -4145,22 +4145,22 @@ 'p' : pentagram 'h' : hexagon '8' : octagon - + The marker can also be a tuple (numsides, style, angle), which will create a custom, regular symbol. - + numsides is the number of sides - + style is the style of the regular symbol: 0 : a regular polygon 1 : a star-like symbol 2 : an asterisk - + angle is the angle of rotation of the symbol - + Finally, marker can be (verts, 0), verts is a sequence of (x,y) vertices for a custom scatter symbol. - + s is a size argument in points squared. Any or all of x, y, s, and c may be masked arrays, in which This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ef...@us...> - 2008-02-02 08:21:45
|
Revision: 4931 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4931&view=rev Author: efiring Date: 2008-02-02 00:21:41 -0800 (Sat, 02 Feb 2008) Log Message: ----------- Fixed bug in vlines: it was not expanding scalar ymin, ymax Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2008-02-02 07:53:03 UTC (rev 4930) +++ trunk/matplotlib/lib/matplotlib/axes.py 2008-02-02 08:21:41 UTC (rev 4931) @@ -2569,14 +2569,14 @@ if not iterable(xmin): xmin = [xmin] if not iterable(xmax): xmax = [xmax] y = npy.asarray(y) + xmin = npy.asarray(xmin) + xmax = npy.asarray(xmax) if len(xmin)==1: xmin = xmin*npy.ones(y.shape, y.dtype) if len(xmax)==1: xmax = xmax*npy.ones(y.shape, y.dtype) - xmin = npy.asarray(xmin) - xmax = npy.asarray(xmax) if len(xmin)!=len(y): raise ValueError, 'xmin and y are unequal sized sequences' @@ -2640,8 +2640,11 @@ x = npy.asarray(x) ymin = npy.asarray(ymin) ymax = npy.asarray(ymax) + if len(ymin)==1: + ymin = ymin*npy.ones(x.shape, x.dtype) + if len(ymax)==1: + ymax = ymax*npy.ones(x.shape, x.dtype) - if len(ymin)!=len(x): raise ValueError, 'ymin and x are unequal sized sequences' if len(ymax)!=len(x): This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ef...@us...> - 2008-02-03 21:38:50
|
Revision: 4935 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4935&view=rev Author: efiring Date: 2008-02-03 13:38:20 -0800 (Sun, 03 Feb 2008) Log Message: ----------- Fixed right-hand y tick label positioning bug reported by Darren Dale Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2008-02-03 21:26:42 UTC (rev 4934) +++ trunk/matplotlib/lib/matplotlib/axes.py 2008-02-03 21:38:20 UTC (rev 4935) @@ -687,7 +687,7 @@ need to place axis elements in different locations. """ return (self._yaxis_transform + - mtransforms.ScaledTranslation(-1 * pad_points / 72.0, 0, + mtransforms.ScaledTranslation(pad_points / 72.0, 0, self.figure.dpi_scale_trans), "center", "left") This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ef...@us...> - 2008-02-13 02:31:47
|
Revision: 4957 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4957&view=rev Author: efiring Date: 2008-02-12 18:31:45 -0800 (Tue, 12 Feb 2008) Log Message: ----------- Fix bug in pcolorfast with single argument Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2008-02-13 02:10:23 UTC (rev 4956) +++ trunk/matplotlib/lib/matplotlib/axes.py 2008-02-13 02:31:45 UTC (rev 4957) @@ -5020,8 +5020,8 @@ nr, nc = C.shape if len(args) == 1: style = "image" - x = [0, nc+1] - y = [0, nr+1] + x = [0, nc] + y = [0, nr] elif len(args) == 3: x, y = args[:2] x = npy.asarray(x) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2008-03-18 18:46:23
|
Revision: 5004 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5004&view=rev Author: mdboom Date: 2008-03-18 11:46:07 -0700 (Tue, 18 Mar 2008) Log Message: ----------- Fixing merge error. (Thanks Manuel Metz) Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2008-03-18 18:35:10 UTC (rev 5003) +++ trunk/matplotlib/lib/matplotlib/axes.py 2008-03-18 18:46:07 UTC (rev 5004) @@ -4188,7 +4188,6 @@ Finally, marker can be (verts, 0), verts is a sequence of (x,y) vertices for a custom scatter symbol. -<<<<<<< .working numsides is the number of sides @@ -4202,9 +4201,6 @@ Finally, marker can be (verts, 0), verts is a sequence of (x,y) vertices for a custom scatter symbol. -======= - ->>>>>>> .merge-right.r4987 s is a size argument in points squared. Any or all of x, y, s, and c may be masked arrays, in which This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mme...@us...> - 2008-03-20 16:57:42
|
Revision: 5009 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5009&view=rev Author: mmetz_bn Date: 2008-03-20 09:57:41 -0700 (Thu, 20 Mar 2008) Log Message: ----------- scatter docs fixed Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2008-03-20 03:30:58 UTC (rev 5008) +++ trunk/matplotlib/lib/matplotlib/axes.py 2008-03-20 16:57:41 UTC (rev 5009) @@ -4172,6 +4172,8 @@ 'p' : pentagram 'h' : hexagon '8' : octagon + '+' : plus + 'x' : cross The marker can also be a tuple (numsides, style, angle), which will create a custom, regular symbol. @@ -4188,18 +4190,6 @@ Finally, marker can be (verts, 0), verts is a sequence of (x,y) vertices for a custom scatter symbol. - numsides is the number of sides - - style is the style of the regular symbol: - 0 : a regular polygon - 1 : a star-like symbol - 2 : an asterisk - - angle is the angle of rotation of the symbol - - Finally, marker can be (verts, 0), verts is a sequence of (x,y) - vertices for a custom scatter symbol. - s is a size argument in points squared. Any or all of x, y, s, and c may be masked arrays, in which This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mme...@us...> - 2008-04-28 11:31:28
|
Revision: 5087 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5087&view=rev Author: mmetz_bn Date: 2008-04-28 04:31:19 -0700 (Mon, 28 Apr 2008) Log Message: ----------- array of indices as integers in hexbin Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2008-04-28 07:41:25 UTC (rev 5086) +++ trunk/matplotlib/lib/matplotlib/axes.py 2008-04-28 11:31:19 UTC (rev 5087) @@ -4533,10 +4533,10 @@ sy = (ymax-ymin) / ny x = (x-xmin)/sx y = (y-ymin)/sy - ix1 = npy.round(x) - iy1 = npy.round(y) - ix2 = npy.floor(x) - iy2 = npy.floor(y) + ix1 = npy.round(x).astype(int) + iy1 = npy.round(y).astype(int) + ix2 = npy.floor(x).astype(int) + iy2 = npy.floor(y).astype(int) nx1 = nx + 1 ny1 = ny + 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |