matplotlib/matplotlib — pull request #1312 by dmcdougall (2012-09-26 12:00:39+00:00)
Title: Add ability to unshare a pair of shared [xy] axes

Example:

```python
import matplotlib.pyplot as plt

# Let's say you shared a pair of x axes
fig = plt.figure()
ax1 = fig.add_subplot(1, 1, 1)
ax2 = fig.add_subplot(1, 1, 1, sharex=ax1)
ax1.plot(range(3))
ax2.plot(range(10))

# You can then unshare the x axes shared between ax1 and ax2
ax1.unshare_x_axes(ax2)

# Alternatively, you can call
ax2.unshare_x_axes(ax1)

# They are equivalent
```

I've tried this simple case out, and it seems to work quite nicely. I had to add functionality to remove weak references from `cbook.Grouper()` and that change is included in this pull request.