Revision: 8093 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8093&view=rev Author: efiring Date: 2010-01-22 02:18:13 +0000 (Fri, 22 Jan 2010)
Log Message: ----------- Contourf: change method of making bottom bound include zmin. This avoids a problem in colorbar tick labeling when zmin is 0. Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/contour.py Modified: trunk/matplotlib/lib/matplotlib/contour.py =================================================================== --- trunk/matplotlib/lib/matplotlib/contour.py 2010-01-19 00:26:16 UTC (rev 8092) +++ trunk/matplotlib/lib/matplotlib/contour.py 2010-01-22 02:18:13 UTC (rev 8093) @@ -676,8 +676,17 @@ if self.filled: if self.linewidths is not None: warnings.warn('linewidths is ignored by contourf') + lowers = self._levels[:-1] + if self.zmin == lowers[0]: + # Include minimum values in lowest interval + lowers = lowers.copy() # so we don't change self._levels + if self.logscale: + lowers[0] = 0.99 * self.zmin + else: + lowers[0] -= 1 uppers = self._levels[1:] + for level, level_upper in zip(lowers, uppers): nlist = C.trace(level, level_upper, nchunk = self.nchunk) nseg = len(nlist)//2 @@ -756,14 +765,6 @@ zmin = self.zmin self.locator.set_bounds(zmin, zmax) lev = self.locator() - zmargin = (zmax - zmin) * 0.000001 # so z < (zmax + zmargin) - if zmax >= lev[-1]: - lev[-1] += zmargin - if zmin <= lev[0]: - if self.logscale: - lev[0] = 0.99 * zmin - else: - lev[0] -= zmargin self._auto = True if self.filled: return lev @@ -1141,6 +1142,15 @@ be removed. Chunking introduces artifacts at the chunk boundaries unless *antialiased* is *False*. + Note: contourf fills intervals that are closed at the top; that + is, for boundaries *z1* and *z2*, the filled region is:: + + z1 < z <= z2 + + There is one exception: if the lowest boundary coincides with + the minimum value of the *z* array, then that minimum value + will be included in the lowest interval. + **Examples:** .. plot:: mpl_examples/pylab_examples/contour_demo.py This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ------------------------------------------------------------------------------ Throughout its 18-year history, RSA Conference consistently attracts the world's best and brightest in the field, creating opportunities for Conference attendees to learn about information security's most important issues through interactions with peers, luminaries and emerging and established companies. http://p.sf.net/sfu/rsaconf-dev2dev _______________________________________________ Matplotlib-checkins mailing list Matplotlib-checkins@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-checkins