Back to Proposal List

Matplotlib: Foundation of Scientific Visualization in Python

Project Matplotlib

Thomas A. Caswell (Brookhaven National Laboratory, NumFOCUS)

Funding Cycle 1

Proposal Summary

To enable Matplotlib to continue as the core plotting library of the scientific Python ecosystem by addressing the maintenance backlog and planning Matplotlib's evolution to meet the community’s visualization challenges for the next decade.



Matplotlib is a Python 2D plotting library which produces publication quality figures in a variety of hardcopy formats and interactive environments across platforms. Matplotlib can be used in Python scripts, the Python and IPython shells, the Jupyter notebook/lab, web application servers, and four graphical user interface toolkits. Matplotlib tries to make easy things easy and hard things possible. You can generate plots, histograms, power spectra, bar charts, errorcharts, scatterplots, etc., with just a few lines of code. For simple plotting the pyplot module provides a MATLAB-like interface, particularly when combined with IPython. For the power user, you have full control of line styles, font properties, axes properties, etc, via an object oriented interface or via a set of functions familiar to MATLAB users.

Key Personnel

Thomas A. Caswell
Hannah Aizenman
Michael Grossberg