A succinct matplotlib wrapper for making beautiful, publication-quality graphics. It builds upon ProPlot and transports it into the modern age (supporting mpl 3.9.0+).
Below is a gallery showing random examples of what UltraPlot can do, for more examples checkout our extensive docs. View the full gallery here: Gallery.
The documentation is published on readthedocs.
UltraPlot is published on PyPi and
conda-forge. It can be installed with pip or
conda as follows:
pip install ultraplot
conda install -c conda-forge ultraplotpyCirclize-based plots require the optional circos extra:
pip install 'ultraplot[circos]'The docs extra also includes pyCirclize for building the documentation.
To install the circos, docs, and stats dependency groups together:
pip install 'ultraplot[all]'Likewise, an existing installation of UltraPlot can be upgraded to the latest version with:
pip install --upgrade ultraplot
conda upgrade ultraplotTo install a development version of UltraPlot, you can use
pip install git+https://github.com/ultraplot/ultraplot.git
or clone the repository and run pip install -e .
inside the ultraplot folder.
UltraPlot includes a Model Context Protocol (MCP) server that lets AI assistants search documentation and examples, inspect the live Python API, and read source code and release notes.
See the MCP installation guide for installation instructions, client configuration, and documentation setup.
If you use UltraPlot in your research, please cite the latest release metadata in
CITATION.cff. GitHub can export this metadata as BibTeX from the
repository's "Cite this repository" panel, and the Zenodo badge below points to
the project DOI across releases.