Matplotlib is the leading scientific visualization tool for Python. Though its ability to generate publication-quality plots is well-known, some of its more advanced features are less-often utilized. In this tutorial, we will explore the ability to create custom mouse- and key-bindings within matplotlib plot windows, giving participants the background and tools needed to create simple cross-platform GUI applications within matplotlib. After going through the basics, we will walk through some more intricate scripts, including a simple MineSweeper game and a 3D interactive Rubik's cube, both implemented entirely in Matplotlib.
Presentation notebook can be viewed at: github.com/jakevdp/matplotlib_pydata2013