Matplotlib has a fully function user event handling system that gives the user access to all mouse and keyboard events. This is how the pan/zoom functionality works! This tutorial will teach you how to hook into this system to develop your own interactive figures.
This tutorial will assume you are familiar with Matplotlib and the basics of OO programming.
A rough outline is