🏳️Matplotlib — Visualization with Python

Website faviconmatplotlib.org

[Skip to main content](#main-content)

 Ctrl+K

*   [Plot types](https://matplotlib.org/stable/plot_types/index)

*   [User guide](https://matplotlib.org/stable/users/index)

*   [Tutorials](https://matplotlib.org/stable/tutorials/index)

*   [Examples](https://matplotlib.org/stable/gallery/index)

*   [Reference](https://matplotlib.org/stable/api/index)

*   [Contribute](https://matplotlib.org/stable/devel/index)

*   [Releases](https://matplotlib.org/stable/users/release_notes)

*   [Gitter](https://gitter.im/matplotlib/matplotlib)

*   [Discourse](https://discourse.matplotlib.org)

*   [GitHub](https://github.com/matplotlib/matplotlib)

*   [Twitter](https://twitter.com/matplotlib/)

Matplotlib: Visualization with Python

=====================================

Matplotlib is a comprehensive library for creating static, animated, and interactive visualizations in Python. Matplotlib makes easy things easy and hard things possible.

*   Create [publication quality plots](https://ieeexplore.ieee.org/document/4160265/citations?tabFilter=papers).

*   Make [interactive figures](https://mybinder.org/v2/gh/matplotlib/mpl-brochure-binder/main?labpath=MatplotlibExample.ipynb) that can zoom, pan, update.

*   Customize [visual style](https://matplotlib.org/stable/gallery/style_sheets/style_sheets_reference.html) and [layout](https://matplotlib.org/stable/tutorials/provisional/mosaic.html).

*   Export to [many file formats](https://matplotlib.org/stable/api/figure_api.html#matplotlib.figure.Figure.savefig).

*   Embed in [JupyterLab and Graphical User Interfaces](https://matplotlib.org/stable/gallery/#embedding-matplotlib-in-graphical-user-interfaces).

*   Use a rich array of [third-party packages](https://matplotlib.org/mpl-third-party/) built on Matplotlib.

[Try Matplotlib (on Binder)](https://mybinder.org/v2/gh/matplotlib/mpl-brochure-binder/main?labpath=MatplotlibExample.ipynb)

[

step(x, y)

](https://matplotlib.org/stable/plot_types/basic/step.html)

*   [Getting Started](https://matplotlib.org/stable/users/getting_started/)

*   [Examples](https://matplotlib.org/stable/plot_types/index.html)

*   [Reference](https://matplotlib.org/stable/index.html)

*   [Cheat Sheets](https://matplotlib.org/cheatsheets/)

*   [Documentation](https://matplotlib.org/stable/index.html)

### News[#](#news "Permalink to news section")

##### May 30, 2024

[GSOC 2024: Bivariate Colormaps](https://discourse.matplotlib.org/t/gsoc-2024-announcement/24469)

A warm welcome to Trygve Magnus Ræder, who is working on [bivariate colormapping](https://trygvrad.github.io/google-soc-bivariate-colormaps/).

##### May 16, 2024

[Matplotlib 3.9.0 Released](https://discourse.matplotlib.org/t/matplotlib-announce-ann-matplotlib-3-9-0/24444)

We thank the 175 authors for the 450 pull requests that comprise the 3.9.0 release.

[Older Announcements](https://discourse.matplotlib.org/c/announce/14)

### Resources[#](#resources "Permalink to resources section")

Be sure to check the [Users guide](https://matplotlib.org/stable/users/index.html) and the [API docs](https://matplotlib.org/stable/api/index.html). The full text [search](https://matplotlib.org/stable/search.html) is a good way to discover the docs including the many examples.

Join our community at [discourse.matplotlib.org](https://discourse.matplotlib.org) to get help, share your work, and discuss contributing & development.

Check out the Matplotlib tag on [StackOverflow](https://stackoverflow.com/questions/tagged/matplotlib).

Meet us at our monthly call for new contributors to the Matplotlib project. Subscribe to our [community calendar](https://scientific-python.org/calendars/) at Scientific Python to get access to all our community meetings.

Short questions related to contributing to Matplotlib may be posted on the [gitter](https://gitter.im/matplotlib/matplotlib) channel.

### Domain Specific Tools[#](#domain-specific-tools "Permalink to domain specific tools section")

A large number of third party packages extend and build on Matplotlib functionality, including several higher-level plotting interfaces (seaborn, HoloViews, ggplot, ...), and a projection and mapping toolkit (Cartopy).

[More Domain-Specific Tools](https://matplotlib.org/mpl-third-party/)

seaborn Cartopy DNA Features Viewer plotnine WCS Axes

### seaborn

seaborn is a high level interface for drawing statistical graphics with Matplotlib. It aims to make visualization a central part of exploring and understanding complex datasets.

[statistical data visualization](https://seaborn.pydata.org/)

### Cartopy

Cartopy is a Python package designed for geospatial data processing in order to produce maps and other geospatial data analyses.

[Cartopy](https://scitools.org.uk/cartopy/docs/latest/)

### DNA Features Viewer

DNA Features Viewer is a Python library to visualize DNA features, e.g. from GenBank or Gff files, or Biopython SeqRecords.

[DNA Features Viewer](https://github.com/Edinburgh-Genome-Foundry/DnaFeaturesViewer)

### plotnine

plotnine is an implementation of a grammar of graphics in Python. The grammar allows users to compose plots by explicitly mapping data to the visual objects that make up the plot.

[plotnine](https://plotnine.readthedocs.io/en/stable/)

### WCSAxes

WCSAxes is a framework for making plots of Astronomical data in Matplotlib.

[WCSAxes](https://docs.astropy.org/en/stable/visualization/wcsaxes/)

Support Matplotlib[#](#support "Permalink to support Matplotlib section")

-------------------------------------------------------------------------

*   #### Contribute

    Matplotlib is a community project maintained for and by its users

    You can help by answering questions [on discourse](https://discourse.matplotlib.org), reporting a bug or requesting a feature [on GitHub](https://github.com/matplotlib/matplotlib/issues), or improving the [documentation and code](https://matplotlib.org/stable/devel/index.html)!

    [Join us on Discourse](https://discourse.matplotlib.org) [Join us on GitHub](https://github.com/matplotlib/matplotlib)

*   #### Cite

    Matplotlib is the result of development efforts by John Hunter (1968–2012) and the project's [many contributors](https://matplotlib.org/stable/project/credits.html).

    If Matplotlib contributes to a project that leads to a scientific publication, please acknowledge this work by citing the project!

    [Ready made citation](https://matplotlib.org/stable/project/citing.html)

*   #### Donate

    If you would like to support Matplotlib financially you can donate by [sponsoring Matplotlib on GitHub](https://github.com/sponsors/matplotlib) or making a (USA) tax-deductible donation [through NumFOCUS](https://numfocus.org/donate-to-matplotlib).

    [Sponsor on GitHub](https://github.com/sponsors/matplotlib) [Donate to Matplotlib](https://numfocus.org/donate-to-matplotlib)