You can subscribe to this list here.
2007 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(115) |
Aug
(120) |
Sep
(137) |
Oct
(170) |
Nov
(461) |
Dec
(263) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2008 |
Jan
(120) |
Feb
(74) |
Mar
(35) |
Apr
(74) |
May
(245) |
Jun
(356) |
Jul
(240) |
Aug
(115) |
Sep
(78) |
Oct
(225) |
Nov
(98) |
Dec
(271) |
2009 |
Jan
(132) |
Feb
(84) |
Mar
(74) |
Apr
(56) |
May
(90) |
Jun
(79) |
Jul
(83) |
Aug
(296) |
Sep
(214) |
Oct
(76) |
Nov
(82) |
Dec
(66) |
2010 |
Jan
(46) |
Feb
(58) |
Mar
(51) |
Apr
(77) |
May
(58) |
Jun
(126) |
Jul
(128) |
Aug
(64) |
Sep
(50) |
Oct
(44) |
Nov
(48) |
Dec
(54) |
2011 |
Jan
(68) |
Feb
(52) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
2018 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <md...@us...> - 2010-07-06 15:18:49
|
Revision: 8515 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8515&view=rev Author: mdboom Date: 2010-07-06 15:18:43 +0000 (Tue, 06 Jul 2010) Log Message: ----------- Reset clipping upon exit of draw_markers to avoid negative interaction with blitting. Modified Paths: -------------- trunk/matplotlib/src/_backend_agg.cpp Modified: trunk/matplotlib/src/_backend_agg.cpp =================================================================== --- trunk/matplotlib/src/_backend_agg.cpp 2010-07-06 14:48:31 UTC (rev 8514) +++ trunk/matplotlib/src/_backend_agg.cpp 2010-07-06 15:18:43 UTC (rev 8515) @@ -796,6 +796,8 @@ delete[] fillCache; if (strokeCache != staticStrokeCache) delete[] strokeCache; + theRasterizer.reset_clipping(); + rendererBase.reset_clipping(true); throw; } @@ -804,6 +806,9 @@ if (strokeCache != staticStrokeCache) delete[] strokeCache; + theRasterizer.reset_clipping(); + rendererBase.reset_clipping(true); + return Py::Object(); } @@ -1086,6 +1091,7 @@ { set_clipbox(gc.cliprect, rendererBase); rendererBase.blend_from(pixf, 0, (int)x, (int)(height - (y + image->rowsOut))); + rendererBase.reset_clipping(true); } image->flipud_out(empty); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jd...@us...> - 2010-07-06 14:48:37
|
Revision: 8514 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8514&view=rev Author: jdh2358 Date: 2010-07-06 14:48:31 +0000 (Tue, 06 Jul 2010) Log Message: ----------- update coding guide to point to 1.0 release branch Modified Paths: -------------- branches/v1_0_maint/doc/devel/coding_guide.rst Modified: branches/v1_0_maint/doc/devel/coding_guide.rst =================================================================== --- branches/v1_0_maint/doc/devel/coding_guide.rst 2010-07-06 14:40:33 UTC (rev 8513) +++ branches/v1_0_maint/doc/devel/coding_guide.rst 2010-07-06 14:48:31 UTC (rev 8514) @@ -24,17 +24,13 @@ svn co https://matplotlib.svn.sourceforge.net/svnroot/matplotlib/trunk/\ matplotlib mpl --username=youruser --password=yourpass -Branch checkouts, eg the maintenance branch:: +Branch checkouts, eg the 1.0.x maintenance branch:: svn co https://matplotlib.svn.sourceforge.net/svnroot/matplotlib/branches/\ - v0_99_maint mpl99 --username=youruser --password=yourpass + v1_0_maint mpl1 --username=youruser --password=yourpass -The current release of the trunk is in the 0.99.x maintenance branch:: - svn co https://matplotlib.svn.sourceforge.net/svnroot/matplotlib/branches/\ - v0_99_maint mpl99 --username=youruser --password=yourpass - Committing changes ------------------ @@ -96,7 +92,7 @@ svnmerge.py merge -S BRANCHNAME Where BRANCHNAME is the name of the branch to merge *from*, - e.g. v0_99_maint. + e.g. v1_0_maint. If you wish to merge only specific revisions (in an unusual situation), do:: @@ -130,17 +126,17 @@ with this. * Creating a new branch from the trunk (if the release version is - 0.99 at revision 6573):: + 1.0 at revision 8503):: > svn copy \ - https://matplotlib.svn.sf.net/svnroot/matplotlib/trunk/matplotlib@7315 \ - https://matplotlib.svn.sf.net/svnroot/matplotlib/branches/v0_99_maint \ - -m "Creating maintenance branch for 0.99" + https://matplotlib.svn.sf.net/svnroot/matplotlib/trunk/matplotlib@8503 \ + https://matplotlib.svn.sf.net/svnroot/matplotlib/branches/v1_0_maint \ + -m "Creating maintenance branch for 1.0" * You can add a new branch for the trunk to "track" using "svnmerge.py init", e.g., from a working copy of the trunk:: - > svnmerge.py init https://matplotlib.svn.sourceforge.net/svnroot/matplotlib/branches/v0_99_maint + > svnmerge.py init https://matplotlib.svn.sourceforge.net/svnroot/matplotlib/branches/v1_0_maint property 'svnmerge-integrated' set on '.' After doing a "svn commit" on this, this merge tracking is available @@ -150,7 +146,7 @@ * Tracking can later be removed with the "svnmerge.py uninit" command, e.g.:: - > svnmerge.py -S v0_99_maint uninit + > svnmerge.py -S v1_0_maint uninit .. _using-git: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jd...@us...> - 2010-07-06 14:40:39
|
Revision: 8513 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8513&view=rev Author: jdh2358 Date: 2010-07-06 14:40:33 +0000 (Tue, 06 Jul 2010) Log Message: ----------- inited from a clean branch Property Changed: ---------------- trunk/ Property changes on: trunk ___________________________________________________________________ Modified: svnmerge-integrated - /branches/v1_0_maint:1-8509 + /branches/v1_0_maint:1-8512 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jd...@us...> - 2010-07-06 14:37:20
|
Revision: 8512 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8512&view=rev Author: jdh2358 Date: 2010-07-06 14:37:14 +0000 (Tue, 06 Jul 2010) Log Message: ----------- Creating maintenance branch for 1.0 Added Paths: ----------- branches/v1_0_maint/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jd...@us...> - 2010-07-06 14:36:36
|
Revision: 8511 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8511&view=rev Author: jdh2358 Date: 2010-07-06 14:36:29 +0000 (Tue, 06 Jul 2010) Log Message: ----------- removing 1.0 branch; trying again Removed Paths: ------------- branches/v1_0_maint/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jd...@us...> - 2010-07-06 14:23:52
|
Revision: 8510 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8510&view=rev Author: jdh2358 Date: 2010-07-06 14:23:46 +0000 (Tue, 06 Jul 2010) Log Message: ----------- re-init 1_0 branch Property Changed: ---------------- trunk/ Property changes on: trunk ___________________________________________________________________ Added: svnmerge-integrated + /branches/v1_0_maint:1-8509 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jd...@us...> - 2010-07-06 14:20:45
|
Revision: 8509 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8509&view=rev Author: jdh2358 Date: 2010-07-06 14:20:39 +0000 (Tue, 06 Jul 2010) Log Message: ----------- tinkering with svnmerge init Property Changed: ---------------- trunk/matplotlib/ Property changes on: trunk/matplotlib ___________________________________________________________________ Modified: svnmerge-integrated - /branches/mathtex:1-7263 /branches/v0_91_maint:1-6428 /branches/v0_98_5_maint:1-7253 /branches/v1_0_maint:1-8504 /trunk/matplotlib:1-7315 + /branches/mathtex:1-7263 /branches/v0_91_maint:1-6428 /branches/v0_98_5_maint:1-7253 /trunk/matplotlib:1-7315 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jd...@us...> - 2010-07-06 14:15:38
|
Revision: 8508 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8508&view=rev Author: jdh2358 Date: 2010-07-06 14:15:32 +0000 (Tue, 06 Jul 2010) Log Message: ----------- re-initing v1_0_maint uninit Property Changed: ---------------- trunk/matplotlib/ Property changes on: trunk/matplotlib ___________________________________________________________________ Modified: svnmerge-integrated - /branches/mathtex:1-7263 /branches/v0_91_maint:1-6428 /branches/v0_98_5_maint:1-7253 /trunk/matplotlib:1-7315 + /branches/mathtex:1-7263 /branches/v0_91_maint:1-6428 /branches/v0_98_5_maint:1-7253 /branches/v1_0_maint:1-8504 /trunk/matplotlib:1-7315 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jd...@us...> - 2010-07-06 14:14:05
|
Revision: 8507 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8507&view=rev Author: jdh2358 Date: 2010-07-06 14:13:58 +0000 (Tue, 06 Jul 2010) Log Message: ----------- test commit; experimenting w/ svnmerge Property Changed: ---------------- trunk/matplotlib/ Property changes on: trunk/matplotlib ___________________________________________________________________ Modified: svnmerge-integrated - /branches/mathtex:1-7263 /branches/v0_91_maint:1-6428 /branches/v0_98_5_maint:1-7253 /branches/v1_0_maint:1-8504 /trunk/matplotlib:1-7315 + /branches/mathtex:1-7263 /branches/v0_91_maint:1-6428 /branches/v0_98_5_maint:1-7253 /trunk/matplotlib:1-7315 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jd...@us...> - 2010-07-06 14:11:27
|
Revision: 8506 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8506&view=rev Author: jdh2358 Date: 2010-07-06 14:11:21 +0000 (Tue, 06 Jul 2010) Log Message: ----------- updated coding guide docs w/ new release branch Modified Paths: -------------- branches/v1_0_maint/doc/devel/coding_guide.rst Modified: branches/v1_0_maint/doc/devel/coding_guide.rst =================================================================== --- branches/v1_0_maint/doc/devel/coding_guide.rst 2010-07-06 13:59:01 UTC (rev 8505) +++ branches/v1_0_maint/doc/devel/coding_guide.rst 2010-07-06 14:11:21 UTC (rev 8506) @@ -24,17 +24,13 @@ svn co https://matplotlib.svn.sourceforge.net/svnroot/matplotlib/trunk/\ matplotlib mpl --username=youruser --password=yourpass -Branch checkouts, eg the maintenance branch:: +Branch checkouts, eg the 1.0.x maintenance branch:: svn co https://matplotlib.svn.sourceforge.net/svnroot/matplotlib/branches/\ - v0_99_maint mpl99 --username=youruser --password=yourpass + v1_0_maint mpl1 --username=youruser --password=yourpass -The current release of the trunk is in the 0.99.x maintenance branch:: - svn co https://matplotlib.svn.sourceforge.net/svnroot/matplotlib/branches/\ - v0_99_maint mpl99 --username=youruser --password=yourpass - Committing changes ------------------ @@ -96,7 +92,7 @@ svnmerge.py merge -S BRANCHNAME Where BRANCHNAME is the name of the branch to merge *from*, - e.g. v0_99_maint. + e.g. v1_0_maint. If you wish to merge only specific revisions (in an unusual situation), do:: @@ -130,17 +126,17 @@ with this. * Creating a new branch from the trunk (if the release version is - 0.99 at revision 6573):: + 1.0 at revision 8503):: > svn copy \ - https://matplotlib.svn.sf.net/svnroot/matplotlib/trunk/matplotlib@7315 \ - https://matplotlib.svn.sf.net/svnroot/matplotlib/branches/v0_99_maint \ - -m "Creating maintenance branch for 0.99" + https://matplotlib.svn.sf.net/svnroot/matplotlib/trunk/matplotlib@8503 \ + https://matplotlib.svn.sf.net/svnroot/matplotlib/branches/v1_0_maint \ + -m "Creating maintenance branch for 1.0" * You can add a new branch for the trunk to "track" using "svnmerge.py init", e.g., from a working copy of the trunk:: - > svnmerge.py init https://matplotlib.svn.sourceforge.net/svnroot/matplotlib/branches/v0_99_maint + > svnmerge.py init https://matplotlib.svn.sourceforge.net/svnroot/matplotlib/branches/v1_0_maint property 'svnmerge-integrated' set on '.' After doing a "svn commit" on this, this merge tracking is available @@ -150,7 +146,7 @@ * Tracking can later be removed with the "svnmerge.py uninit" command, e.g.:: - > svnmerge.py -S v0_99_maint uninit + > svnmerge.py -S v1_0_maint uninit .. _using-git: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jd...@us...> - 2010-07-06 13:59:07
|
Revision: 8505 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8505&view=rev Author: jdh2358 Date: 2010-07-06 13:59:01 +0000 (Tue, 06 Jul 2010) Log Message: ----------- initialized merge tracking on 1.0 branch Property Changed: ---------------- trunk/matplotlib/ Property changes on: trunk/matplotlib ___________________________________________________________________ Modified: svnmerge-integrated - /branches/mathtex:1-7263 /branches/v0_91_maint:1-6428 /branches/v0_98_5_maint:1-7253 /trunk/matplotlib:1-7315 + /branches/mathtex:1-7263 /branches/v0_91_maint:1-6428 /branches/v0_98_5_maint:1-7253 /branches/v1_0_maint:1-8504 /trunk/matplotlib:1-7315 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jd...@us...> - 2010-07-06 13:57:05
|
Revision: 8504 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8504&view=rev Author: jdh2358 Date: 2010-07-06 13:56:59 +0000 (Tue, 06 Jul 2010) Log Message: ----------- Creating maintenance branch for 1.0 Added Paths: ----------- branches/v1_0_maint/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jd...@us...> - 2010-07-06 13:56:37
|
Revision: 8503 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8503&view=rev Author: jdh2358 Date: 2010-07-06 13:56:31 +0000 (Tue, 06 Jul 2010) Log Message: ----------- tagging for release 1.0 Modified Paths: -------------- trunk/matplotlib/CHANGELOG trunk/matplotlib/doc/pyplots/tex_demo.png trunk/matplotlib/examples/pylab_examples/tex_demo.py trunk/matplotlib/lib/matplotlib/__init__.py Modified: trunk/matplotlib/CHANGELOG =================================================================== --- trunk/matplotlib/CHANGELOG 2010-07-06 08:50:34 UTC (rev 8502) +++ trunk/matplotlib/CHANGELOG 2010-07-06 13:56:31 UTC (rev 8503) @@ -1,3 +1,6 @@ +2010-07-06 Tagging for mpl 1.0 at r8502 + + 2010-07-05 Added Ben Root's patch to put 3D plots in arbitrary axes, allowing you to mix 3d and 2d in different axes/subplots or to have multiple 3D plots in one figure. See Modified: trunk/matplotlib/doc/pyplots/tex_demo.png =================================================================== (Binary files differ) Modified: trunk/matplotlib/examples/pylab_examples/tex_demo.py =================================================================== --- trunk/matplotlib/examples/pylab_examples/tex_demo.py 2010-07-06 08:50:34 UTC (rev 8502) +++ trunk/matplotlib/examples/pylab_examples/tex_demo.py 2010-07-06 13:56:31 UTC (rev 8503) @@ -29,5 +29,5 @@ title(r"\TeX\ is Number $\displaystyle\sum_{n=1}^\infty\frac{-e^{i\pi}}{2^n}$!", fontsize=16, color='r') grid(True) -#savefig('tex_demo') +savefig('tex_demo') show() Modified: trunk/matplotlib/lib/matplotlib/__init__.py =================================================================== --- trunk/matplotlib/lib/matplotlib/__init__.py 2010-07-06 08:50:34 UTC (rev 8502) +++ trunk/matplotlib/lib/matplotlib/__init__.py 2010-07-06 13:56:31 UTC (rev 8503) @@ -99,7 +99,7 @@ """ from __future__ import generators -__version__ = '1.0.0svn' +__version__ = '1.0.0' __revision__ = '$Revision$' __date__ = '$Date$' This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ian...@us...> - 2010-07-06 08:50:40
|
Revision: 8502 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8502&view=rev Author: ianthomas23 Date: 2010-07-06 08:50:34 +0000 (Tue, 06 Jul 2010) Log Message: ----------- Improved triplot performance. Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/tri/triplot.py Modified: trunk/matplotlib/lib/matplotlib/tri/triplot.py =================================================================== --- trunk/matplotlib/lib/matplotlib/tri/triplot.py 2010-07-06 03:04:59 UTC (rev 8501) +++ trunk/matplotlib/lib/matplotlib/tri/triplot.py 2010-07-06 08:50:34 UTC (rev 8502) @@ -1,4 +1,9 @@ +import matplotlib.axes +from matplotlib.cbook import ls_mapper +from matplotlib.patches import PathPatch +from matplotlib.path import Path from matplotlib.tri.triangulation import Triangulation +import numpy as np def triplot(ax, *args, **kwargs): """ @@ -43,17 +48,30 @@ # If draw both lines and markers at the same time, e.g. # ax.plot(x[edges].T, y[edges].T, *args, **kwargs) # then the markers are drawn more than once which is incorrect if alpha<1. - # Hence draw of lines and markers separately. + # Hence draw lines and markers separately. - # Draw lines without markers. - marker = kwargs.pop('marker', None) - kwargs['marker'] = '' - ax.plot(x[edges].T, y[edges].T, *args, **kwargs) - if marker is None: - kwargs.pop('marker') - else: - kwargs['marker'] = marker + # Decode plot format string, e.g. 'ro-' + fmt = '' + if len(args) > 0: + fmt = args[0] + linestyle, marker, color = matplotlib.axes._process_plot_format(fmt) + # Draw lines without markers, if lines are required. + if linestyle is not None and linestyle is not 'None': + kw = kwargs.copy() + kw.pop('marker', None) # Ignore marker if set. + kw['linestyle'] = ls_mapper[linestyle] + kw['edgecolor'] = color + kw['facecolor'] = None + + vertices = np.column_stack((x[edges].flatten(), y[edges].flatten())) + codes = ([Path.MOVETO] + [Path.LINETO])*len(edges) + + path = Path(vertices, codes) + pathpatch = PathPatch(path, **kw) + + ax.add_patch(pathpatch) + # Draw markers without lines. # Should avoid drawing markers for points that are not in any triangle? kwargs['linestyle'] = '' This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jd...@us...> - 2010-07-06 03:05:05
|
Revision: 8501 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8501&view=rev Author: jdh2358 Date: 2010-07-06 03:04:59 +0000 (Tue, 06 Jul 2010) Log Message: ----------- add some links and fixes to whats new; bump the version num Modified Paths: -------------- trunk/matplotlib/doc/users/whats_new.rst trunk/matplotlib/lib/matplotlib/__init__.py Modified: trunk/matplotlib/doc/users/whats_new.rst =================================================================== --- trunk/matplotlib/doc/users/whats_new.rst 2010-07-06 01:43:34 UTC (rev 8500) +++ trunk/matplotlib/doc/users/whats_new.rst 2010-07-06 03:04:59 UTC (rev 8501) @@ -27,7 +27,7 @@ Jae-Joon Lee has written :mod:`~matplotlib.gridspec`, a new module for doing complex subplot layouts, featuring row and column spans and -more. See :ref:`gridspec` for a tutorial overview. +more. See :ref:`gridspec-guide` for a tutorial overview. .. plot:: users/plotting/examples/demo_gridspec01.py @@ -116,15 +116,18 @@ --------------------------------- The matplotlib trunk is probably in as good a shape as it has ever -been, thanks to improved software carpentry. We now have a buildbot -which runs a suite of nose regression tests on every svn commit, -auto-generating a set of images and comparing them against a set of -known-goods, sending emails to developers on failures with a -pixel-by-pixel image comparison. Releases and release bugfixes happen -in branches, allowing active new feature development to happen in the -trunk while keeping the release branches stable. Thanks to Andrew -Straw, Michael Droettboom and other matplotlib developers for the -heavy lifting. +been, thanks to improved `software carpentry +<http://software-carpentry.org/>`_. We now have a `buildbot +<http://buildbot.net/trac>`_ which runs a suite of `nose +<http://code.google.com/p/python-nose/>`_ regression tests on every +svn commit, auto-generating a set of images and comparing them against +a set of known-goods, sending emails to developers on failures with a +pixel-by-pixel `image comparison +<http://mpl.code.astraw.com/overview.html>`_. Releases and release +bugfixes happen in branches, allowing active new feature development +to happen in the trunk while keeping the release branches stable. +Thanks to Andrew Straw, Michael Droettboom and other matplotlib +developers for the heavy lifting. Bugfix marathon ---------------- Modified: trunk/matplotlib/lib/matplotlib/__init__.py =================================================================== --- trunk/matplotlib/lib/matplotlib/__init__.py 2010-07-06 01:43:34 UTC (rev 8500) +++ trunk/matplotlib/lib/matplotlib/__init__.py 2010-07-06 03:04:59 UTC (rev 8501) @@ -4,9 +4,9 @@ A procedural interface is provided by the companion pyplot module, which may be imported directly, e.g:: - from pyplot import * + from matplotlib.pyplot import * -To include numpy functions, use:: +To include numpy functions too, use:: from pylab import * @@ -90,8 +90,8 @@ for the first time. In particular, it must be called **before** importing pylab (if pylab is imported). -matplotlib is written by John D. Hunter (jdh2358 at gmail.com) and a -host of others. +matplotlib was initially written by John D. Hunter (jdh2358 at +gmail.com) and is now developed and maintained by a host of others. Occasionally the internal documentation (python docstrings) will refer to MATLAB®, a registered trademark of The MathWorks, Inc. @@ -99,7 +99,7 @@ """ from __future__ import generators -__version__ = '1.0rc1' +__version__ = '1.0.0svn' __revision__ = '$Revision$' __date__ = '$Date$' This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <js...@us...> - 2010-07-06 01:43:41
|
Revision: 8500 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8500&view=rev Author: jswhit Date: 2010-07-06 01:43:34 +0000 (Tue, 06 Jul 2010) Log Message: ----------- change version to 1.0 (following matplotlib's lead) Modified Paths: -------------- trunk/toolkits/basemap/Changelog trunk/toolkits/basemap/doc/conf.py trunk/toolkits/basemap/lib/mpl_toolkits/basemap/__init__.py trunk/toolkits/basemap/setup.py Modified: trunk/toolkits/basemap/Changelog =================================================================== --- trunk/toolkits/basemap/Changelog 2010-07-06 01:24:58 UTC (rev 8499) +++ trunk/toolkits/basemap/Changelog 2010-07-06 01:43:34 UTC (rev 8500) @@ -1,4 +1,4 @@ -version 0.99.5 (not yet released) +version 1.0 (not yet released) * don't force adjustable='box' so Basemap is compatible with AxesGrid. Added fcstmaps_axesgrid.py example. * add support for plotting on unstructured grids using Modified: trunk/toolkits/basemap/doc/conf.py =================================================================== --- trunk/toolkits/basemap/doc/conf.py 2010-07-06 01:24:58 UTC (rev 8499) +++ trunk/toolkits/basemap/doc/conf.py 2010-07-06 01:43:34 UTC (rev 8500) @@ -46,9 +46,9 @@ # other places throughout the built documents. # # The short X.Y version. -version = '0.99.5' +version = '1.0' # The full version, including alpha/beta/rc tags. -release = '0.99.5' +release = '1.0' # There are two options for replacing |today|: either, you set today to some # non-false value, then it is used: Modified: trunk/toolkits/basemap/lib/mpl_toolkits/basemap/__init__.py =================================================================== --- trunk/toolkits/basemap/lib/mpl_toolkits/basemap/__init__.py 2010-07-06 01:24:58 UTC (rev 8499) +++ trunk/toolkits/basemap/lib/mpl_toolkits/basemap/__init__.py 2010-07-06 01:43:34 UTC (rev 8500) @@ -52,7 +52,7 @@ else: basemap_datadir = os.sep.join([os.path.dirname(__file__), 'data']) -__version__ = '0.99.5' +__version__ = '1.0' # supported map projections. _projnames = {'cyl' : 'Cylindrical Equidistant', Modified: trunk/toolkits/basemap/setup.py =================================================================== --- trunk/toolkits/basemap/setup.py 2010-07-06 01:24:58 UTC (rev 8499) +++ trunk/toolkits/basemap/setup.py 2010-07-06 01:43:34 UTC (rev 8500) @@ -225,7 +225,7 @@ package_data = {'mpl_toolkits.basemap':pyproj_datafiles+basemap_datafiles} setup( name = "basemap", - version = "0.99.5", + version = "1.0", description = "Plot data on map projections with matplotlib", long_description = """ An add-on toolkit for matplotlib that lets you plot data This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jd...@us...> - 2010-07-06 01:25:04
|
Revision: 8499 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8499&view=rev Author: jdh2358 Date: 2010-07-06 01:24:58 +0000 (Tue, 06 Jul 2010) Log Message: ----------- fix some code that breaks python 2.4 Modified Paths: -------------- trunk/matplotlib/examples/api/hinton_demo.py trunk/matplotlib/lib/mpl_toolkits/axisartist/angle_helper.py Modified: trunk/matplotlib/examples/api/hinton_demo.py =================================================================== --- trunk/matplotlib/examples/api/hinton_demo.py 2010-07-06 01:05:28 UTC (rev 8498) +++ trunk/matplotlib/examples/api/hinton_demo.py 2010-07-06 01:24:58 UTC (rev 8499) @@ -8,7 +8,7 @@ def hinton(W, maxWeight=None, ax=None): """ - Draws a Hinton diagram for visualizing a weight matrix. + Draws a Hinton diagram for visualizing a weight matrix. """ if not ax: fig = plt.figure() @@ -23,13 +23,14 @@ ax.yaxis.set_major_locator(NullLocator()) for (x,y),w in np.ndenumerate(W): - color = 'white' if w > 0 else 'black' + if w > 0: color = 'white' + else: color = 'black' size = np.sqrt(np.abs(w)) rect = Rectangle([x - size / 2, y - size / 2], size, size, facecolor=color, edgecolor=color) ax.add_patch(rect) ax.autoscale_view() - + # Reverse the yaxis limits ax.set_ylim(*ax.get_ylim()[::-1]) Modified: trunk/matplotlib/lib/mpl_toolkits/axisartist/angle_helper.py =================================================================== --- trunk/matplotlib/lib/mpl_toolkits/axisartist/angle_helper.py 2010-07-06 01:05:28 UTC (rev 8498) +++ trunk/matplotlib/lib/mpl_toolkits/axisartist/angle_helper.py 2010-07-06 01:24:58 UTC (rev 8499) @@ -179,7 +179,9 @@ def __call__(self, direction, factor, values): # hour if len(values) == 0: return [] - ss = [[-1, 1][v>0] for v in values] + #ss = [[-1, 1][v>0] for v in values] #not py24 compliant + values = np.asarray(values) + ss = np.where(values>0, 1, -1) values = np.abs(values)/15. if factor == 1: @@ -221,7 +223,9 @@ def __call__(self, direction, factor, values): if len(values) == 0: return [] - ss = [[-1, 1][v>0] for v in values] + #ss = [[-1, 1][v>0] for v in values] #not py24 compliant + values = np.asarray(values) + ss = np.where(values>0, 1, -1) values = np.abs(values) if factor == 1: return ["$%d^{\circ}$" % (s*int(v),) for (s, v) in zip(ss, values)] This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jd...@us...> - 2010-07-06 01:05:35
|
Revision: 8498 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8498&view=rev Author: jdh2358 Date: 2010-07-06 01:05:28 +0000 (Tue, 06 Jul 2010) Log Message: ----------- added whats new for 1.0 Modified Paths: -------------- trunk/matplotlib/doc/users/whats_new.rst Added Paths: ----------- trunk/matplotlib/doc/api/gridspec_api.rst trunk/matplotlib/doc/pyplots/whats_new_1_subplot3d.py Added: trunk/matplotlib/doc/api/gridspec_api.rst =================================================================== --- trunk/matplotlib/doc/api/gridspec_api.rst (rev 0) +++ trunk/matplotlib/doc/api/gridspec_api.rst 2010-07-06 01:05:28 UTC (rev 8498) @@ -0,0 +1,12 @@ +************* +matplotlib gridspec +************* + + +:mod:`matplotlib.gridspec` +==================== + +.. automodule:: matplotlib.gridspec + :members: + :undoc-members: + :show-inheritance: Added: trunk/matplotlib/doc/pyplots/whats_new_1_subplot3d.py =================================================================== --- trunk/matplotlib/doc/pyplots/whats_new_1_subplot3d.py (rev 0) +++ trunk/matplotlib/doc/pyplots/whats_new_1_subplot3d.py 2010-07-06 01:05:28 UTC (rev 8498) @@ -0,0 +1,30 @@ +from mpl_toolkits.mplot3d.axes3d import Axes3D +from matplotlib import cm +#from matplotlib.ticker import LinearLocator, FixedLocator, FormatStrFormatter +import matplotlib.pyplot as plt +import numpy as np + +fig = plt.figure() + +ax = fig.add_subplot(1, 2, 1, projection='3d') +X = np.arange(-5, 5, 0.25) +Y = np.arange(-5, 5, 0.25) +X, Y = np.meshgrid(X, Y) +R = np.sqrt(X**2 + Y**2) +Z = np.sin(R) +surf = ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap=cm.jet, + linewidth=0, antialiased=False) +ax.set_zlim3d(-1.01, 1.01) + +#ax.w_zaxis.set_major_locator(LinearLocator(10)) +#ax.w_zaxis.set_major_formatter(FormatStrFormatter('%.03f')) + +fig.colorbar(surf, shrink=0.5, aspect=5) + +from mpl_toolkits.mplot3d.axes3d import get_test_data +ax = fig.add_subplot(1, 2, 2, projection='3d') +X, Y, Z = get_test_data(0.05) +ax.plot_wireframe(X, Y, Z, rstride=10, cstride=10) + +plt.show() + Modified: trunk/matplotlib/doc/users/whats_new.rst =================================================================== --- trunk/matplotlib/doc/users/whats_new.rst 2010-07-05 23:09:51 UTC (rev 8497) +++ trunk/matplotlib/doc/users/whats_new.rst 2010-07-06 01:05:28 UTC (rev 8498) @@ -7,11 +7,140 @@ This page just covers the highlights -- for the full story, see the `CHANGELOG <http://matplotlib.sourceforge.net/_static/CHANGELOG>`_ +new in matplotlib-1.0 +====================== + +.. _whats-new-html5: + +HTML5/Canvas backend +--------------------- + +Simon Ratcliffe and Ludwig Schwardt have released an `HTML5/Canvas +<http://code.google.com/p/mplh5canvas/>`_ backend for matplotlib. The +backend is almost feature complete, and they have done a lot of work +comparing their html5 rendered images with our core renderer Agg. The +backend features client/server interactive navigation of matplotlib +figures in an html5 compliant browser. + +Sophisticated subplot grid layout +--------------------------------- + +Jae-Joon Lee has written :mod:`~matplotlib.gridspec`, a new module for +doing complex subplot layouts, featuring row and column spans and +more. See :ref:`gridspec` for a tutorial overview. + +.. plot:: users/plotting/examples/demo_gridspec01.py + +Easy pythonic subplots +----------------------- + +Fernando Perez got tired of all the boilerplate code needed to create a +figure and multiple subplots when using the matplotlib API, and wrote +a :func:`~matplotlib.pyplot.subplots` helper function. Basic usage +allows you to create the figure and an array of subplots with numpy +indexing (starts with 0). Eg:: + + fig, axarr = plt.subplots(2, 2) + axarr[0,0].plot([1,2,3]) # upper, left + +See :ref:`pylab_examples-subplots_demo` for several code examples. + +Contour fixes and and triplot +--------------------------------- + +Ian Thomas has fixed a long-standing bug that has vexed our most +talented developers for years. :func:`~matplotlib.pyplot.contourf` +now handles interior masked regions, and the boundaries of line and +filled contours coincide. + +Additionally, he has contributed a new module `matplotlib.tri` and +helper function :func:`~matplotlib.pyplot.triplot` for creating and +plotting unstructured triangular grids. + +.. plot:: mpl_examples/pylab_examples/triplot_demo.py + +multiple calls to show supported +--------------------------------- + +A long standing request is to support multiple calls to +:func:`~matplotlib.pyplot.show`. This has been difficult because it +is hard to get consistent behavior across operating systems, user +interface toolkits and versions. Eric Firing has done a lot of work +on rationalizing show across backends, with the desired behavior to +make show raise all newly created figures and block execution until +they are closed. Repeated calls to show should raise newly created +figures since the last call. Eric has done a lot of testing on the +user interface toolkits and versions and platforms he has access to, +but it is not possible to test them all, so please report problems to +the `mailing list +<http://sourceforge.net/mailarchive/forum.php?forum_name=matplotlib-users>`_ +and `bug tracker +<http://sourceforge.net/tracker/?group_id=80706&atid=560720>`_. + + +mplot3d graphs can be embedded in arbitrary axes +------------------------------------------------- + +You can now place an mplot3d graph into an arbitrary axes location, +supporting mixing of 2D and 3D graphs in the same figure, and/or +multiple 3D graphs in a single figure, using the "projection" keyword +argument to add_axes or add_subplot. Thanks Ben Root. + +.. plot:: pyplots/whats_new_1_subplot3d.py + +tick_params +------------ + +Eric Firing wrote tick_params, a convenience method for changing the +appearance of ticks and tick labels. See pyplot function +:func:`~matplotlib.pyplot.tick_params` and associated Axes method +:meth:`~matplotlib.axes.Axes.tick_params`. + +Lots of performance and feature enhancements +--------------------------------------------- + + +* Faster magnification of large images, and the ability to zoom in to + a single pixel + +* Local installs of documentation work better + +* Improved "widgets" -- mouse grabbing is supported + +* More accurate snapping of lines to pixel boundaries + +* More consistent handling of color, particularly the alpha channel, + throughout the API + +Much improved software carpentry +--------------------------------- + +The matplotlib trunk is probably in as good a shape as it has ever +been, thanks to improved software carpentry. We now have a buildbot +which runs a suite of nose regression tests on every svn commit, +auto-generating a set of images and comparing them against a set of +known-goods, sending emails to developers on failures with a +pixel-by-pixel image comparison. Releases and release bugfixes happen +in branches, allowing active new feature development to happen in the +trunk while keeping the release branches stable. Thanks to Andrew +Straw, Michael Droettboom and other matplotlib developers for the +heavy lifting. + +Bugfix marathon +---------------- + +Eric Firing went on a bug fixing and closing marathon, closing over +100 bugs on the `bug tracker +<http://sourceforge.net/tracker/?group_id=80706&atid=560720>`_ with +help from Jae-Joon Lee, Michael Droettboom, Christoph Gohlke and +Michiel de Hoon. + + new in matplotlib-0.99 ====================== -.. _whats-new-mplot3d: + New documentation ----------------- @@ -21,6 +150,7 @@ working with paths and transformations: :ref:`path_tutorial` and :ref:`transforms_tutorial`. +.. _whats-new-mplot3d: mplot3d -------- This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jd...@us...> - 2010-07-05 23:09:57
|
Revision: 8497 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8497&view=rev Author: jdh2358 Date: 2010-07-05 23:09:51 +0000 (Mon, 05 Jul 2010) Log Message: ----------- support 3d plots in arbitrary axes; thanks Ben Root Modified Paths: -------------- trunk/matplotlib/CHANGELOG trunk/matplotlib/examples/api/compound_path.py trunk/matplotlib/lib/mpl_toolkits/mplot3d/axes3d.py Added Paths: ----------- trunk/matplotlib/examples/mplot3d/subplot3d_demo.py Modified: trunk/matplotlib/CHANGELOG =================================================================== --- trunk/matplotlib/CHANGELOG 2010-07-05 20:47:39 UTC (rev 8496) +++ trunk/matplotlib/CHANGELOG 2010-07-05 23:09:51 UTC (rev 8497) @@ -1,3 +1,8 @@ +2010-07-05 Added Ben Root's patch to put 3D plots in arbitrary axes, + allowing you to mix 3d and 2d in different axes/subplots or + to have multiple 3D plots in one figure. See + examples/mplot3d/subplot3d_demo.py - JDH + 2010-07-05 Preferred kwarg names in set_xlim are now 'left' and 'right'; in set_ylim, 'bottom' and 'top'; original kwargs are still accepted without complaint. - EF Modified: trunk/matplotlib/examples/api/compound_path.py =================================================================== --- trunk/matplotlib/examples/api/compound_path.py 2010-07-05 20:47:39 UTC (rev 8496) +++ trunk/matplotlib/examples/api/compound_path.py 2010-07-05 23:09:51 UTC (rev 8497) @@ -21,7 +21,7 @@ vertices = np.array(vertices, float) path = Path(vertices, codes) -pathpatch = PathPatch(path, facecolor='red', edgecolor='green') +pathpatch = PathPatch(path, facecolor='None', edgecolor='green') fig = plt.figure() ax = fig.add_subplot(111) Added: trunk/matplotlib/examples/mplot3d/subplot3d_demo.py =================================================================== --- trunk/matplotlib/examples/mplot3d/subplot3d_demo.py (rev 0) +++ trunk/matplotlib/examples/mplot3d/subplot3d_demo.py 2010-07-05 23:09:51 UTC (rev 8497) @@ -0,0 +1,30 @@ +from mpl_toolkits.mplot3d.axes3d import Axes3D +from matplotlib import cm +#from matplotlib.ticker import LinearLocator, FixedLocator, FormatStrFormatter +import matplotlib.pyplot as plt +import numpy as np + +fig = plt.figure() + +ax = fig.add_subplot(1, 2, 1, projection='3d') +X = np.arange(-5, 5, 0.25) +Y = np.arange(-5, 5, 0.25) +X, Y = np.meshgrid(X, Y) +R = np.sqrt(X**2 + Y**2) +Z = np.sin(R) +surf = ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap=cm.jet, + linewidth=0, antialiased=False) +ax.set_zlim3d(-1.01, 1.01) + +#ax.w_zaxis.set_major_locator(LinearLocator(10)) +#ax.w_zaxis.set_major_formatter(FormatStrFormatter('%.03f')) + +fig.colorbar(surf, shrink=0.5, aspect=5) + +from mpl_toolkits.mplot3d.axes3d import get_test_data +ax = fig.add_subplot(1, 2, 2, projection='3d') +X, Y, Z = get_test_data(0.05) +ax.plot_wireframe(X, Y, Z, rstride=10, cstride=10) + +plt.show() + Modified: trunk/matplotlib/lib/mpl_toolkits/mplot3d/axes3d.py =================================================================== --- trunk/matplotlib/lib/mpl_toolkits/mplot3d/axes3d.py 2010-07-05 20:47:39 UTC (rev 8496) +++ trunk/matplotlib/lib/mpl_toolkits/mplot3d/axes3d.py 2010-07-05 23:09:51 UTC (rev 8497) @@ -37,6 +37,7 @@ """ 3D axes object. """ + name = '3d' def __init__(self, fig, rect=None, *args, **kwargs): ''' @@ -1210,3 +1211,11 @@ Z = Z * 500 return X, Y, Z + + +######################################################## +# Register Axes3D as a 'projection' object available +# for use just like any other axes +######################################################## +import matplotlib.projections as proj +proj.projection_registry.register(Axes3D) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ef...@us...> - 2010-07-05 20:47:45
|
Revision: 8496 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8496&view=rev Author: efiring Date: 2010-07-05 20:47:39 +0000 (Mon, 05 Jul 2010) Log Message: ----------- set_xlim, set_ylim accept descriptive kwargs: left, right, bottom, top Modified Paths: -------------- trunk/matplotlib/CHANGELOG trunk/matplotlib/doc/api/api_changes.rst trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/CHANGELOG =================================================================== --- trunk/matplotlib/CHANGELOG 2010-07-05 19:39:59 UTC (rev 8495) +++ trunk/matplotlib/CHANGELOG 2010-07-05 20:47:39 UTC (rev 8496) @@ -1,7 +1,11 @@ +2010-07-05 Preferred kwarg names in set_xlim are now 'left' and + 'right'; in set_ylim, 'bottom' and 'top'; original + kwargs are still accepted without complaint. - EF + 2010-07-05 TkAgg and FltkAgg backends are now consistent with other interactive backends: when used in scripts from the command line (not from ipython -pylab), show blocks, - and can be called more than once. + and can be called more than once. - EF 2010-07-02 Modified CXX/WrapPython.h to fix "swab bug" on solaris so mpl can compile on Solaris with CXX6 in the trunk. Closes Modified: trunk/matplotlib/doc/api/api_changes.rst =================================================================== --- trunk/matplotlib/doc/api/api_changes.rst 2010-07-05 19:39:59 UTC (rev 8495) +++ trunk/matplotlib/doc/api/api_changes.rst 2010-07-05 20:47:39 UTC (rev 8496) @@ -16,7 +16,10 @@ pyplot functions, has been changed: when view limits are set explicitly with one of these methods, autoscaling is turned off for the matching axis. A new *auto* kwarg is available to - control this behavior. + control this behavior. The limit kwargs have been renamed to + *left* and *right* instead of *xmin* and *xmax*, and *bottom* + and *top* instead of *ymin* and *ymax*. The old names may still + be used, however. * There are five new Axes methods with corresponding pyplot functions to facilitate autoscaling, tick location, and tick Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2010-07-05 19:39:59 UTC (rev 8495) +++ trunk/matplotlib/lib/matplotlib/axes.py 2010-07-05 20:47:39 UTC (rev 8496) @@ -2298,11 +2298,11 @@ def get_xlim(self): """ - Get the x-axis range [*xmin*, *xmax*] + Get the x-axis range [*left*, *right*] """ return tuple(self.viewLim.intervalx) - def set_xlim(self, xmin=None, xmax=None, emit=True, auto=False): + def set_xlim(self, left=None, right=None, emit=True, auto=False, **kw): """ call signature:: @@ -2314,23 +2314,23 @@ set_xlim((left, right)) set_xlim(left, right) - set_xlim(xmin=1) # right unchanged - set_xlim(xmax=1) # left unchanged + set_xlim(left=1) # right unchanged + set_xlim(right=1) # left unchanged Keyword arguments: - *xmin*: scalar - the left xlim - *xmax*: scalar - the right xlim + *left*: scalar + the left xlim; *xmin*, the previous name, may still be used + *right*: scalar + the right xlim; *xmax*, the previous name, may still be used *emit*: [ True | False ] notify observers of lim change *auto*: [ True | False | None ] turn *x* autoscaling on (True), off (False; default), or leave unchanged (None) - Note: the kwarg terminology may be confusing. The first value, - *xmin*, is the left, and the second, *xmax*, is the right. + Note: the *left* (formerly *xmin*) value may be greater than + the *right* (formerly *xmax*). For example, suppose *x* is years before present. Then one might use:: @@ -2343,26 +2343,34 @@ ACCEPTS: len(2) sequence of floats """ - if xmax is None and iterable(xmin): - xmin,xmax = xmin + if 'xmin' in kw: + left = kw.pop('xmin') + if 'xmax' in kw: + right = kw.pop('xmax') + if kw: + raise ValueError("unrecognized kwargs: %s" % kw.keys()) + if right is None and iterable(left): + left,right = left - self._process_unit_info(xdata=(xmin, xmax)) - if xmin is not None: - xmin = self.convert_xunits(xmin) - if xmax is not None: - xmax = self.convert_xunits(xmax) + self._process_unit_info(xdata=(left, right)) + if left is not None: + left = self.convert_xunits(left) + if right is not None: + right = self.convert_xunits(right) - old_xmin,old_xmax = self.get_xlim() - if xmin is None: xmin = old_xmin - if xmax is None: xmax = old_xmax + old_left, old_right = self.get_xlim() + if left is None: left = old_left + if right is None: right = old_right - if xmin==xmax: - warnings.warn('Attempting to set identical xmin==xmax results in singular transformations; automatically expanding. xmin=%s, xmax=%s'%(xmin, xmax)) - xmin, xmax = mtransforms.nonsingular(xmin, xmax, increasing=False) - xmin, xmax = self.xaxis.limit_range_for_scale(xmin, xmax) + if left==right: + warnings.warn(('Attempting to set identical left==right results\n' + + 'in singular transformations; automatically expanding.\n' + + 'left=%s, right=%s') % (left, right)) + left, right = mtransforms.nonsingular(left, right, increasing=False) + left, right = self.xaxis.limit_range_for_scale(left, right) - self.viewLim.intervalx = (xmin, xmax) + self.viewLim.intervalx = (left, right) if auto is not None: self._autoscaleXon = bool(auto) @@ -2377,7 +2385,7 @@ other.figure.canvas is not None): other.figure.canvas.draw_idle() - return xmin, xmax + return left, right def get_xscale(self): 'return the xaxis scale string: %s' % ( @@ -2492,11 +2500,11 @@ def get_ylim(self): """ - Get the y-axis range [*ymin*, *ymax*] + Get the y-axis range [*bottom*, *top*] """ return tuple(self.viewLim.intervaly) - def set_ylim(self, ymin=None, ymax=None, emit=True, auto=False): + def set_ylim(self, bottom=None, top=None, emit=True, auto=False, **kw): """ call signature:: @@ -2508,23 +2516,23 @@ set_ylim((bottom, top)) set_ylim(bottom, top) - set_ylim(ymin=1) # top unchanged - set_ylim(ymax=1) # bottom unchanged + set_ylim(bottom=1) # top unchanged + set_ylim(top=1) # bottom unchanged Keyword arguments: - *ymin*: scalar - the bottom ylim - *ymax*: scalar - the top ylim + *bottom*: scalar + the bottom ylim; the previous name, *ymin*, may still be used + *top*: scalar + the top ylim; the previous name, *ymax*, may still be used *emit*: [ True | False ] notify observers of lim change *auto*: [ True | False | None ] turn *y* autoscaling on (True), off (False; default), or leave unchanged (None) - Note: the kwarg terminology may be confusing. The first value, - *ymin*, is the bottom, and the second, *ymax*, is the top. + Note: the *bottom* (formerly *ymin*) value may be greater than + the *top* (formerly *ymax*). For example, suppose *y* is depth in the ocean. Then one might use:: @@ -2537,26 +2545,35 @@ ACCEPTS: len(2) sequence of floats """ - if ymax is None and iterable(ymin): - ymin,ymax = ymin + if 'ymin' in kw: + bottom = kw.pop('ymin') + if 'ymax' in kw: + top = kw.pop('ymax') + if kw: + raise ValueError("unrecognized kwargs: %s" % kw.keys()) - if ymin is not None: - ymin = self.convert_yunits(ymin) - if ymax is not None: - ymax = self.convert_yunits(ymax) + if top is None and iterable(bottom): + bottom,top = bottom - old_ymin,old_ymax = self.get_ylim() + if bottom is not None: + bottom = self.convert_yunits(bottom) + if top is not None: + top = self.convert_yunits(top) - if ymin is None: ymin = old_ymin - if ymax is None: ymax = old_ymax + old_bottom, old_top = self.get_ylim() - if ymin==ymax: - warnings.warn('Attempting to set identical ymin==ymax results in singular transformations; automatically expanding. ymin=%s, ymax=%s'%(ymin, ymax)) + if bottom is None: bottom = old_bottom + if top is None: top = old_top - ymin, ymax = mtransforms.nonsingular(ymin, ymax, increasing=False) - ymin, ymax = self.yaxis.limit_range_for_scale(ymin, ymax) + if bottom==top: + warnings.warn(('Attempting to set identical bottom==top results\n' + + 'in singular transformations; automatically expanding.\n' + + 'bottom=%s, top=%s') % (bottom, top)) - self.viewLim.intervaly = (ymin, ymax) + bottom, top = mtransforms.nonsingular(bottom, top, increasing=False) + bottom, top = self.yaxis.limit_range_for_scale(bottom, top) + + self.viewLim.intervaly = (bottom, top) if auto is not None: self._autoscaleYon = bool(auto) @@ -2571,7 +2588,7 @@ other.figure.canvas is not None): other.figure.canvas.draw_idle() - return ymin, ymax + return bottom, top def get_yscale(self): 'return the xaxis scale string: %s' % ( This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ef...@us...> - 2010-07-05 19:40:05
|
Revision: 8495 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8495&view=rev Author: efiring Date: 2010-07-05 19:39:59 +0000 (Mon, 05 Jul 2010) Log Message: ----------- Remove experimental config subpackage using traits Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/__init__.py Removed Paths: ------------- trunk/matplotlib/lib/matplotlib/config/ Modified: trunk/matplotlib/lib/matplotlib/__init__.py =================================================================== --- trunk/matplotlib/lib/matplotlib/__init__.py 2010-07-05 19:03:09 UTC (rev 8494) +++ trunk/matplotlib/lib/matplotlib/__init__.py 2010-07-05 19:39:59 UTC (rev 8495) @@ -107,10 +107,6 @@ import distutils.sysconfig import distutils.version - -NEWCONFIG = False - - # Needed for toolkit setuptools support if 0: try: @@ -827,16 +823,6 @@ """ rcParams.update(rcParamsDefault) -if NEWCONFIG: - #print "importing from reorganized config system!" - try: - from matplotlib.config import (rcParams, rcdefaults, - mplConfig, save_config) - verbose.set_level(rcParams['verbose.level']) - verbose.set_fileo(rcParams['verbose.fileo']) - except: - from matplotlib.config import rcParams, rcdefaults - _use_error_msg = """ This call to matplotlib.use() has no effect because the the backend has already been chosen; matplotlib.use() must be called *before* pylab, matplotlib.pyplot, This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ef...@us...> - 2010-07-05 19:03:16
|
Revision: 8494 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8494&view=rev Author: efiring Date: 2010-07-05 19:03:09 +0000 (Mon, 05 Jul 2010) Log Message: ----------- tkagg and fltkagg backends now have blocking show() like all the others Modified Paths: -------------- trunk/matplotlib/CHANGELOG trunk/matplotlib/lib/matplotlib/backends/backend_fltkagg.py trunk/matplotlib/lib/matplotlib/backends/backend_tkagg.py trunk/matplotlib/lib/matplotlib/rcsetup.py trunk/matplotlib/matplotlibrc.template Modified: trunk/matplotlib/CHANGELOG =================================================================== --- trunk/matplotlib/CHANGELOG 2010-07-05 01:26:53 UTC (rev 8493) +++ trunk/matplotlib/CHANGELOG 2010-07-05 19:03:09 UTC (rev 8494) @@ -1,3 +1,8 @@ +2010-07-05 TkAgg and FltkAgg backends are now consistent with other + interactive backends: when used in scripts from the + command line (not from ipython -pylab), show blocks, + and can be called more than once. + 2010-07-02 Modified CXX/WrapPython.h to fix "swab bug" on solaris so mpl can compile on Solaris with CXX6 in the trunk. Closes tracker bug 3022815 - JDH Modified: trunk/matplotlib/lib/matplotlib/backends/backend_fltkagg.py =================================================================== --- trunk/matplotlib/lib/matplotlib/backends/backend_fltkagg.py 2010-07-05 01:26:53 UTC (rev 8493) +++ trunk/matplotlib/lib/matplotlib/backends/backend_fltkagg.py 2010-07-05 19:03:09 UTC (rev 8494) @@ -97,15 +97,8 @@ """ for manager in Gcf.get_all_fig_managers(): manager.show() - #mainloop, if an fltk program exist no need to call that - #threaded (and interractive) version - if show._needmain: - Fltk.Fl.run() - show._needmain = False + Fltk.Fl.run() -show._needmain = True - - def new_figure_manager(num, *args, **kwargs): """ Create a new figure manager instance Modified: trunk/matplotlib/lib/matplotlib/backends/backend_tkagg.py =================================================================== --- trunk/matplotlib/lib/matplotlib/backends/backend_tkagg.py 2010-07-05 01:26:53 UTC (rev 8493) +++ trunk/matplotlib/lib/matplotlib/backends/backend_tkagg.py 2010-07-05 19:03:09 UTC (rev 8494) @@ -64,43 +64,15 @@ figManager.show() -def show(block=False): +def show(): """ Show all figures. - Temporary, experimental kwarg *block* defaults to False to - provide the behavior present throughout mpl history to date: - interactive mode is forced on, and show does not block. - - Set *block* to True to test the proposed new behavior, - consistent with other backends, in which show does not affect - interactive mode, and always blocks until all figures are closed. - In addition, the rcParam['tk.pythoninspect'] is ignored. - - Use this kwarg only for testing; other backends do not accept - a kwarg to show, and might never do so. """ for manager in Gcf.get_all_fig_managers(): manager.show() - if block: - # proposed new behavior; seems to make this backend consistent - # with others, with no drawbacks identified yet. - Tk.mainloop() - else: - # long-time behavior: non-blocking, forces interactive mode - import matplotlib - matplotlib.interactive(True) - if rcParams['tk.pythoninspect']: - os.environ['PYTHONINSPECT'] = '1' - if show._needmain: - Tk.mainloop() - show._needmain = False + Tk.mainloop() -show._needmain = True # This can go away if we eliminate block=False option. - - - - def new_figure_manager(num, *args, **kwargs): """ Create a new figure manager instance Modified: trunk/matplotlib/lib/matplotlib/rcsetup.py =================================================================== --- trunk/matplotlib/lib/matplotlib/rcsetup.py 2010-07-05 01:26:53 UTC (rev 8493) +++ trunk/matplotlib/lib/matplotlib/rcsetup.py 2010-07-05 19:03:09 UTC (rev 8494) @@ -297,6 +297,11 @@ warnings.warn("Deprecated negative_linestyle specification; use 'solid' or 'dashed'") return (0, dashes) # (offset, (solid, blank)) +def validate_tkpythoninspect(s): + # Introduced 2010/07/05 + warnings.warn("tk.pythoninspect is obsolete, and has no effect") + return validate_bool(s) + validate_legend_loc = ValidateInStrings('legend_loc',[ 'best', 'upper right', @@ -526,7 +531,7 @@ 'cairo.format' : ['png', validate_cairo_format], 'tk.window_focus' : [False, validate_bool], # Maintain shell focus for TkAgg - 'tk.pythoninspect' : [False, validate_bool], # Set PYTHONINSPECT + 'tk.pythoninspect' : [False, validate_tkpythoninspect], # obsolete 'ps.papersize' : ['letter', validate_ps_papersize], # Set the papersize/type 'ps.useafm' : [False, validate_bool], # Set PYTHONINSPECT 'ps.usedistiller' : [False, validate_ps_distiller], # use ghostscript or xpdf to distill ps output Modified: trunk/matplotlib/matplotlibrc.template =================================================================== --- trunk/matplotlib/matplotlibrc.template 2010-07-05 01:26:53 UTC (rev 8493) +++ trunk/matplotlib/matplotlibrc.template 2010-07-05 19:03:09 UTC (rev 8494) @@ -319,7 +319,6 @@ # tk backend params #tk.window_focus : False # Maintain shell focus for TkAgg -#tk.pythoninspect : False # tk sets PYTHONINSEPCT # ps backend params #ps.papersize : letter # auto, letter, legal, ledger, A0-A10, B0-B10 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jd...@us...> - 2010-07-05 01:27:00
|
Revision: 8493 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8493&view=rev Author: jdh2358 Date: 2010-07-05 01:26:53 +0000 (Mon, 05 Jul 2010) Log Message: ----------- Applied Ben's rotate button patch for axes3d Modified Paths: -------------- trunk/matplotlib/lib/mpl_toolkits/mplot3d/axes3d.py Modified: trunk/matplotlib/lib/mpl_toolkits/mplot3d/axes3d.py =================================================================== --- trunk/matplotlib/lib/mpl_toolkits/mplot3d/axes3d.py 2010-07-05 01:25:09 UTC (rev 8492) +++ trunk/matplotlib/lib/mpl_toolkits/mplot3d/axes3d.py 2010-07-05 01:26:53 UTC (rev 8493) @@ -446,7 +446,7 @@ if self.M is None: return '' - if self.button_pressed == 1: + if self.button_pressed in self._rotate_btn: return 'azimuth=%d deg, elevation=%d deg ' % (self.azim, self.elev) # ignore xd and yd and display angles instead This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jd...@us...> - 2010-07-05 01:25:15
|
Revision: 8492 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8492&view=rev Author: jdh2358 Date: 2010-07-05 01:25:09 +0000 (Mon, 05 Jul 2010) Log Message: ----------- applied Ben's mplconfig patch Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/config/mplconfig.py Modified: trunk/matplotlib/lib/matplotlib/config/mplconfig.py =================================================================== --- trunk/matplotlib/lib/matplotlib/config/mplconfig.py 2010-07-03 05:09:49 UTC (rev 8491) +++ trunk/matplotlib/lib/matplotlib/config/mplconfig.py 2010-07-05 01:25:09 UTC (rev 8492) @@ -117,7 +117,7 @@ class path(TConfig): simplify = T.false - simplify_threshold = T.float(1.0 / 9.0) + simplify_threshold = T.Float(1.0 / 9.0) snap = T.true class patch(TConfig): This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ef...@us...> - 2010-07-03 05:09:56
|
Revision: 8491 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8491&view=rev Author: efiring Date: 2010-07-03 05:09:49 +0000 (Sat, 03 Jul 2010) Log Message: ----------- fix new bugs in handling of xlim, ylim, margins Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2010-07-03 01:20:53 UTC (rev 8490) +++ trunk/matplotlib/lib/matplotlib/axes.py 2010-07-03 05:09:49 UTC (rev 8491) @@ -830,7 +830,7 @@ self.xaxis.major = self._sharex.xaxis.major self.xaxis.minor = self._sharex.xaxis.minor x0, x1 = self._sharex.get_xlim() - self.set_xlim(x0, x1, emit=False) + self.set_xlim(x0, x1, emit=False, auto=None) self.xaxis.set_scale(self._sharex.xaxis.get_scale()) else: self.xaxis.set_scale('linear') @@ -839,7 +839,7 @@ self.yaxis.major = self._sharey.yaxis.major self.yaxis.minor = self._sharey.yaxis.minor y0, y1 = self._sharey.get_ylim() - self.set_ylim(y0, y1, emit=False) + self.set_ylim(y0, y1, emit=False, auto=None) self.yaxis.set_scale(self._sharey.yaxis.get_scale()) else: self.yaxis.set_scale('linear') @@ -1678,7 +1678,7 @@ *tight* to *None* will preserve the previous setting. Specifying any margin changes only the autoscaling; for example, - if *xmargin* is not zero, then *xmargin* times the X data + if *xmargin* is not None, then *xmargin* times the X data interval will be added to each end of that interval before it is used in autoscaling. @@ -1700,9 +1700,12 @@ if my is not None: self.set_ymargin(my) - self.autoscale_view(tight=tight, scalex=bool(mx), scaley=bool(my)) + scalex = (mx is not None) + scaley = (my is not None) + self.autoscale_view(tight=tight, scalex=scalex, scaley=scaley) + def set_rasterization_zorder(self, z): """ Set zorder value below which artists will be rasterized @@ -2368,7 +2371,8 @@ # Call all of the other x-axes that are shared with this one for other in self._shared_x_axes.get_siblings(self): if other is not self: - other.set_xlim(self.viewLim.intervalx, emit=False) + other.set_xlim(self.viewLim.intervalx, + emit=False, auto=auto) if (other.figure != self.figure and other.figure.canvas is not None): other.figure.canvas.draw_idle() @@ -2561,7 +2565,8 @@ # Call all of the other y-axes that are shared with this one for other in self._shared_y_axes.get_siblings(self): if other is not self: - other.set_ylim(self.viewLim.intervaly, emit=False) + other.set_ylim(self.viewLim.intervaly, + emit=False, auto=auto) if (other.figure != self.figure and other.figure.canvas is not None): other.figure.canvas.draw_idle() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |