Effectively using matplotib
2022-08-30 , HS 118

This tutorial explains the fundamental ideas and concepts of matplotlib. It's suited for complete beginners to get started as well as existing users who want to improve their plotting abilities and learn about best practices.


Matplotlib is one of the most-used and powerful visualization libraries for python. Nevertheless, there has been and still is some confusion on how use it properly. This has a number of reasons ranging from an evolution of the API and lack of good documentation to the complexity that comes with the large feature set and flexibility. But these issues can be overcome.

This tutorial will explain the main concepts and intended usage patterns of matplotlib. Knowing these, lets you effectively use high-level functions for most of the cases. But you will be able to go into the details if you need to fine-tune certain aspects of the plot. We'll also touch some nowadays discouraged ways of working from the past (you should know what not to do - even though that's still found in lots of examples on the web) and we may get a glimpse into the future.

Tim Hoffmann joined the matplotlib core development team almost two years ago with the mission to make matplotlib easier to use.

Requirements and set up instructions:
Jupyter plus any recent (>=3.0) matplotlib version will do. To be on the safe side, you may set up a new conda environment using conda create -n using-mpl matplotlib jupyterlab pandas ipympl.

Notebooks: https://github.com/timhoffm/using-matplotlib


Domains

Data Visualisation

Expected audience expertise: Domain

none

Expected audience expertise: Python

some

Abstract as a tweet

Introduction to matplotlib for visualization in Python

Project Homepage / Git

https://matplotlib.org/

Public link to supporting material

https://github.com/timhoffm/using-matplotlib

Tim Hoffmann is a physicist and software expert passionate to bring science and high-quality software together. He works as Simulation Architect Digital Twin at Carl Zeiss, where he covers all aspects from coding, architecture, training up to software strategy. Tim is an active contributor in the Python open source community. In particular, he is core developer and API lead for the visualization library matplotlib.

This speaker also appears in: