Interactive Plotting with Matplotlib
Interactive Plotting with Matplotlib

Abstract: 

Introduction
- What is Matplotlib?
- There is a book!
Interactive Applications using Matplotlib by Ben Root

"Learn how Lincoln could use Matplotlib to save the Earth from hordes of ravenous space ware-rabbits! Just plotting your data won't save the world, but turning your plots into interactive applications will help your users explore their data and gain greater insight into their problems. This book will walk the reader through the process of turning a simple radar viewer into a useful hazardous event tracker, so you too can spot where the space ware-rabbits are going to strike next!"

* Hello World
- layers of mpl
- figure / axes / artist vs canvas distinction
- figure vs figure manager vs canvas
- mpl_connect
- mpl_disconnect

* Building simple user interactions
- using globals (bad, but easy)
- using classes (good)

* Event Filtering
- use an object with several methods, hook them all up to events
- look at the values in the events to decide what to do
- hold an artist as state and mutate on user input

* Picking
- Use the built-in picking features for selecting features
- Annotate your plots

* Custom Plotting
- matplotlib's API is low level
- write the API you need for your data (inside of which you bring your data to the API)

* Final Product
- a fully functioning 'app'
- what else could you make it do?

Bio: 

Ben Root has been a member of the Matplotlib development team since 2010. He maintains the mplot3d and basemap toolkits for Matplotlib, but spends most of his efforts on code reviews and debugging. Ben given several presentations and tutorials, namely "Anatomy of Matplotlib" and "Introduction to the SciPy Ecosystem". He has also authored the book "Interactive Applications Using Matplotlib". A meteorologist by training, Ben currently works as a scientific programmer at Atmospheric and Environmental Research, Inc.

Privacy Settings
We use cookies to enhance your experience while using our website. If you are using our Services via a browser you can restrict, block or remove cookies through your web browser settings. We also use content and scripts from third parties that may use tracking technologies. You can selectively provide your consent below to allow such third party embeds. For complete information about the cookies we use, data we collect and how we process them, please check our Privacy Policy
Youtube
Consent to display content from Youtube
Vimeo
Consent to display content from Vimeo
Google Maps
Consent to display content from Google