Index: lib/matplotlib/contour.py
===================================================================
--- lib/matplotlib/contour.py	(revision 5042)
+++ lib/matplotlib/contour.py	(working copy)
@@ -405,6 +405,7 @@
         norm = kwargs.get('norm', None)
         self.extend = kwargs.get('extend', 'neither')
         self.antialiased = kwargs.get('antialiased', True)
+        self.draw_contours = kwargs.get('draw_contours', False)
         self.nchunk = kwargs.get('nchunk', 0)
         self.locator = kwargs.get('locator', None)
         if (isinstance(norm, colors.LogNorm)
@@ -448,6 +449,12 @@
         if self.filled:
             if self.linewidths is not None:
                 warnings.warn('linewidths is ignored by contourf')
+
+            if self.draw_contours:
+                self.linewidths = 0 # Draw contours
+            else:
+                self.linewidths = 1 # Disable contours
+
             C = _cntr.Cntr(x, y, z.filled(), _mask)
             lowers = self._levels[:-1]
             uppers = self._levels[1:]
@@ -456,7 +463,8 @@
                         nchunk = self.nchunk)
                 col = collections.PolyCollection(nlist,
                                      antialiaseds = (self.antialiased,),
-                                     edgecolors= 'None')
+                                     edgecolors = None,
+                                     linewidths = self.linewidths)
                 self.ax.add_collection(col)
                 self.collections.append(col)
 
@@ -633,7 +641,7 @@
             if self.filled and len(lev) < 2:
                 raise ValueError("Filled contours require at least 2 levels.")
             # Workaround for cntr.c bug wrt masked interior regions:
-            #if filled:
+            #if self.filled:
             #    z = ma.masked_array(z.filled(-1e38))
             # It's not clear this is any better than the original bug.
             self.levels = lev
@@ -747,8 +755,8 @@
         contour(Z,N) and contour(X,Y,Z,N) - contour N automatically-chosen
                  levels.
 
-        contour(Z,V) and contour(X,Y,Z,V) - draw len(V) contour lines,
-                 at the values specified in sequence V
+        contour(Z,V) and contour(X,Y,Z,V) - contour using the levels
+                  specified in the sequence V
 
         contourf(..., V) - fill the (len(V)-1) regions between the
                  values in V
@@ -830,6 +838,8 @@
                 matplotlibrc is used
 
             contourf only:
+            * draw_contours = True or False (default); determines whether
+              contour lines should be drawn
             * antialiased = True (default) or False
             * nchunk = 0 (default) for no subdivision of the domain;
               specify a positive integer to divide the domain into
