|
From: <ef...@us...> - 2010-04-28 20:49:54
|
Revision: 8286
http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8286&view=rev
Author: efiring
Date: 2010-04-28 20:49:48 +0000 (Wed, 28 Apr 2010)
Log Message:
-----------
colorbar: close 2986719 with small fixups and docstring expansion
Modified Paths:
--------------
trunk/matplotlib/lib/matplotlib/colorbar.py
Modified: trunk/matplotlib/lib/matplotlib/colorbar.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/colorbar.py 2010-04-28 19:50:39 UTC (rev 8285)
+++ trunk/matplotlib/lib/matplotlib/colorbar.py 2010-04-28 20:49:48 UTC (rev 8286)
@@ -160,8 +160,9 @@
Draw a colorbar in an existing axes.
This is a base class for the :class:`Colorbar` class, which is the
- basis for the :func:`~matplotlib.pyplot.colorbar` method and pylab
- function.
+ basis for the :func:`~matplotlib.pyplot.colorbar` function and the
+ :meth:`~matplotlib.figure.Figure.colorbar` method, which are the
+ usual ways of creating a colorbar.
It is also useful by itself for showing a colormap. If the *cmap*
kwarg is given but *boundaries* and *values* are left as None,
@@ -411,6 +412,9 @@
if self.solids is not None:
self.solids.remove()
self.solids = col
+ if self.dividers is not None:
+ self.dividers.remove()
+ self.dividers = None
if self.drawedges:
self.dividers = collections.LineCollection(self._edges(X,Y),
colors=(mpl.rcParams['axes.edgecolor'],),
@@ -684,6 +688,17 @@
self.alpha = alpha
class Colorbar(ColorbarBase):
+ """
+ This class connects a :class:`ColorbarBase` to a
+ :class:`~matplotlib.cm.ScalarMappable` such as a
+ :class:`~matplotlib.image.AxesImage` generated via
+ :meth:`~matplotlib.axes.Axes.imshow`.
+
+ It is not intended to be instantiated directly; instead,
+ use :meth:`~matplotlib.figure.Figure.colorbar` or
+ :func:`~matplotlib.pyplot.colorbar` to make your colorbar.
+
+ """
def __init__(self, ax, mappable, **kw):
mappable.autoscale_None() # Ensure mappable.norm.vmin, vmax
# are set when colorbar is called,
@@ -747,20 +762,28 @@
def update_bruteforce(self, mappable):
'''
- Manually change any contour line colors. This is called
- when the image or contour plot to which this colorbar belongs
- is changed.
+ Destroy and rebuild the colorbar. This is
+ intended to become obsolete, and will probably be
+ deprecated and then removed. It is not called when
+ the pyplot.colorbar function or the Figure.colorbar
+ method are used to create the colorbar.
+
'''
# We are using an ugly brute-force method: clearing and
# redrawing the whole thing. The problem is that if any
# properties have been changed by methods other than the
# colorbar methods, those changes will be lost.
self.ax.cla()
+ # clearing the axes will delete outline, patch, solids, and lines:
+ self.outline = None
+ self.patch = None
+ self.solids = None
+ self.lines = None
+ self.set_alpha(mappable.get_alpha())
+ self.cmap = mappable.cmap
+ self.norm = mappable.norm
self.config_axis()
self.draw_all()
- #if self.vmin != self.norm.vmin or self.vmax != self.norm.vmax:
- # self.ax.cla()
- # self.draw_all()
if isinstance(self.mappable, contour.ContourSet):
CS = self.mappable
if not CS.filled:
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|