matplotlib is a python 2D plotting library that produces publication quality figures in a variety of hard copy formats and interactive environments across multiple platforms.
The application can be used in python scripts, the python and IPython shell, web application servers, and six graphical user interface tool-kits.
matplotlib tries to make easy things easier and hard things possible. With it, you can generate plots, histograms, power spectra, bar charts, error charts, scatter plots, etc, with only a few lines of code.
For simple plotting the pyplot interface 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.