# matplotlib

> Python plotting package

- **URL**: https://www.freshcrate.ai/projects/matplotlib
- **Author**: John D. Hunter
- **Category**: Frameworks
- **Latest version**: `v3.10.9` (2026-04-23)
- **License**: non-standard
- **Source**: https://github.com/matplotlib/matplotlib/issues
- **Homepage**: https://pypi.org/project/matplotlib/
- **Language**: Python
- **GitHub**: 22,732 stars, 8,324 forks
- **Registry**: pypi (`matplotlib`)
- **Tags**: `pypi`

## Description

[![PyPi](https://img.shields.io/pypi/v/matplotlib)](https://pypi.org/project/matplotlib/)
[![Conda](https://img.shields.io/conda/vn/conda-forge/matplotlib)](https://anaconda.org/conda-forge/matplotlib)
[![Downloads](https://img.shields.io/pypi/dm/matplotlib)](https://pypi.org/project/matplotlib)
[![NUMFocus](https://img.shields.io/badge/powered%20by-NumFOCUS-orange.svg?style=flat&colorA=E1523D&colorB=007D8A)](https://numfocus.org)

[![Discourse help forum](https://img.shields.io/badge/help_forum-discourse-blue.svg)](https://discourse.matplotlib.org)
[![Gitter](https://badges.gitter.im/matplotlib/matplotlib.svg)](https://gitter.im/matplotlib/matplotlib)
[![GitHub issues](https://img.shields.io/badge/issue_tracking-github-blue.svg)](https://github.com/matplotlib/matplotlib/issues)
[![Contributing](https://img.shields.io/badge/PR-Welcome-%23FF8300.svg?)](https://matplotlib.org/stable/devel/index.html)

[![GitHub actions status](https://github.com/matplotlib/matplotlib/workflows/Tests/badge.svg)](https://github.com/matplotlib/matplotlib/actions?query=workflow%3ATests)
[![Azure pipelines status](https://dev.azure.com/matplotlib/matplotlib/_apis/build/status/matplotlib.matplotlib?branchName=main)](https://dev.azure.com/matplotlib/matplotlib/_build/latest?definitionId=1&branchName=main)
[![AppVeyor status](https://ci.appveyor.com/api/projects/status/github/matplotlib/matplotlib?branch=main&svg=true)](https://ci.appveyor.com/project/matplotlib/matplotlib)
[![Codecov status](https://codecov.io/github/matplotlib/matplotlib/badge.svg?branch=main&service=github)](https://app.codecov.io/gh/matplotlib/matplotlib)
[![EffVer Versioning](https://img.shields.io/badge/version_scheme-EffVer-0097a7)](https://jacobtomlinson.dev/effver)

![Matplotlib logotype](https://matplotlib.org/_static/logo2.svg)

Matplotlib is a comprehensive library for creating static, animated, and
interactive visualizations in Python.

Check out our [home page](https://matplotlib.org/) for more information.

![image](https://matplotlib.org/_static/readme_preview.png)

Matplotlib produces publication-quality figures in a variety of hardcopy
formats and interactive environments across platforms. Matplotlib can be
used in Python scripts, Python/IPython shells, web application servers,
and various graphical user interface toolkits.

## Install

See the [install
documentation](https://matplotlib.org/stable/users/installing/index.html),
which is generated from `/doc/install/index.rst`

## Contribute

You've discovered a bug or something else you want to change — excellent!

You've worked out a way to fix it — even better!

You want to tell us about it — best of all!

Start at the [contributing
guide](https://matplotlib.org/devdocs/devel/contribute.html)!

## Contact

[Discourse](https://discourse.matplotlib.org/) is the discussion forum
for general questions and discussions and our recommended starting
point.

Our active mailing lists (which are mirrored on Discourse) are:

-   [Users](https://mail.python.org/mailman/listinfo/matplotlib-users)
    mailing list: <matplotlib-users@python.org>
-   [Announcement](https://mail.python.org/mailman/listinfo/matplotlib-announce)
    mailing list: <matplotlib-announce@python.org>
-   [Development](https://mail.python.org/mailman/listinfo/matplotlib-devel)
    mailing list: <matplotlib-devel@python.org>

[Gitter](https://gitter.im/matplotlib/matplotlib) is for coordinating
development and asking questions directly related to contributing to
matplotlib.

## Citing Matplotlib

If Matplotlib contributes to a project that leads to publication, please
acknowledge this by citing Matplotlib.

[A ready-made citation
entry](https://matplotlib.org/stable/users/project/citing.html) is
available.

## Recent releases

| Version | Date | Urgency | Changes |
| --- | --- | --- | --- |
| `v3.10.9` | 2026-04-23 | High | This is a micro release of the v3.10.x series. Highlights of this release include:  - Various minor bug and doc fixes - Security hardening validation of cyclers - Removing eval usage - Security hardening in Latex and PS calls - Removing shell escapes |
| `3.10.8` | 2026-04-21 | Low | Imported from PyPI (3.10.8) |
| `v3.10.8` | 2025-11-13 | Low | This is a bugfix release in the 3.10.x series.      The primary highlights of this release are:      - Properly allow freethreaded mode in the MacOS backend - Better error handling for MacOS backend |
| `v3.10.8` | 2025-11-13 | Low | This is a bugfix release in the 3.10.x series.      The primary highlights of this release are:      - Properly allow freethreaded mode in the MacOS backend - Better error handling for MacOS backend |
| `v3.10.7` | 2025-10-08 | Low | This is the latest bugfix release in the 3.10.x series.      The most important update in this release is that the minimum version of `pyparsing` has been updated to version 3.0. |
| `v3.10.6` | 2025-08-29 | Low | This is a bugfix release in the 3.10.x series.  Highlights from this release include:          - Fix regression of hi-dpi support for Qt     - Fix race condition in TexManager.make_dvi & make_png     - Various documentation and other bugfixes |
| `v3.10.5` | 2025-07-31 | Low | This is the fourth bugfix release of the 3.10.x series.      Included in this release is distributed wheels for Python 3.14 (including freethreaded) and Windows ARM.  There are also several smaller bugfixes. |
| `v3.10.3` | 2025-05-09 | Low | This is the third bugfix release of the 3.10.x series |
| `v3.10.1` | 2025-02-27 | Low | This is the first bugfix release of the 3.10.x series.  This release contains several bug-fixes and adjustments:  - Respect array alpha with interpolation_stage='rgba' in _Imagebase::_make_image - Remove md5 usage to prevent issues on FIPS enabled systems - Fix pyplot.matshow figure handling - Fix modifying Axes' position also alters the original Bbox object used for initialization - Fix title position for polar plots - Add version gate to GTK4 calls when necessary - Raise warning if b |
| `v3.10.0` | 2024-12-14 | Low | Highlights of this release include:          - Preliminary support for free-threaded CPython 3.13     - New more-accessible color cycle     - Dark-mode diverging colormaps     - Exception handling control     - InsetIndicator artist     - FillBetweenPolyCollection     - Fill between 3D lines     - Data in 3D plots can now be dynamically clipped to the axes view limits     - Rotating 3d plots with the mouse     - Increased Figure limits with Agg renderer     - Subfigures no longer pro |

## Citation

- HTML: https://www.freshcrate.ai/projects/matplotlib
- Markdown: https://www.freshcrate.ai/projects/matplotlib.md
- Dependencies JSON: https://www.freshcrate.ai/api/projects/matplotlib/deps

_Generated by freshcrate.ai. Indexes pypi releases for AI-agent ecosystem packages._
