mouseevents raise Singular matrix exception: problem solved

I use Debian stable. The python-matplotlib package version is 0.99.3-1.

Here is a small program which threw many exceptions whenever I moved the
mouse across the matplotlib display.

#! /usr/bin/env python

import matplotlib
import matplotlib.pyplot as plt

counts = [1, 8, 71]
diffs = range(len(counts))
plt.plot(diffs, counts)
plt.axes([0, 200, 0, 100])
plt.show()

Here is one of the tracebacks:

Exception in Tkinter callback
Traceback (most recent call last):
   File "/usr/lib/python2.6/lib-tk/Tkinter.py", line 1413, in __call__
     return self.func(*args)
   File "/usr/lib/pymodules/python2.6/matplotlib/backends/backend_tkagg.py", line 246, in motion_notify_event
     FigureCanvasBase.motion_notify_event(self, x, y, guiEvent=event)
   File "/usr/lib/pymodules/python2.6/matplotlib/backend_bases.py", line 1244, in motion_notify_event
     guiEvent=guiEvent)
   File "/usr/lib/pymodules/python2.6/matplotlib/backend_bases.py", line 899, in __init__
     LocationEvent.__init__(self, name, canvas, x, y, guiEvent=guiEvent)
   File "/usr/lib/pymodules/python2.6/matplotlib/backend_bases.py", line 813, in __init__
     axes_list = [a for a in self.canvas.figure.get_axes() if a.in_axes(self)]
   File "/usr/lib/pymodules/python2.6/matplotlib/axes.py", line 1538, in in_axes
     return self.patch.contains(mouseevent)[0]
   File "/usr/lib/pymodules/python2.6/matplotlib/patches.py", line 502, in contains
     x, y = self.get_transform().inverted().transform_point(
   File "/usr/lib/pymodules/python2.6/matplotlib/transforms.py", line 1430, in inverted
     self._inverted = Affine2D(inv(mtx))
   File "/usr/lib/pymodules/python2.6/numpy/linalg/linalg.py", line 423, in inv
     return wrap(solve(a, identity(a.shape[0], dtype=a.dtype)))
   File "/usr/lib/pymodules/python2.6/numpy/linalg/linalg.py", line 306, in solve
     raise LinAlgError, 'Singular matrix'
LinAlgError: Singular matrix
A Google search on "matplotlib mouseevent singular matrix" found that
a similar problem was discussed in matplotlib-users on Jul 29, 2008:
"bar plot picker with 0 height data". John Hunter committed a fix:
"svn r5922". The program that caused the bug in 2008 works on my system.

The problem is:
The docs for matplotlib.pyplot.axes say [left, bottom, width, height] but
the docs for matplotlib.pyplot.axis say [xmin, xmax, ymin, ymax].
I should have used "axis" where I used "axes" which is an easy error to make.
I suggest that "axes" should raise an exception if width or height is zero.