Skip to content

Ultraplot/UltraPlot

Repository files navigation

UltraPlot Logo

Downloads Build Status Coverage Docs PyPI Code style: black pre-commit.ci status PRs Welcome License DOI

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+).

Why UltraPlot? | Write Less, Create More

Comparison of ProPlot and UltraPlot

Checkout our examples

Below is a gallery showing random examples of what UltraPlot can do, for more examples checkout our extensive docs.

Subplots & Layouts

Subplots & Layouts

Create complex multi-panel layouts effortlessly.

Cartesian Plots

Cartesian Plots

Easily generate clean, well-formatted plots.

Projections & Maps

Projections & Maps

Built-in support for projections and geographic plots.

Colorbars & Legends

Colorbars & Legends

Customize legends and colorbars with ease.

Insets & Panels

Insets & Panels

Add inset plots and panel-based layouts.

Colormaps & Cycles

Colormaps & Cycles

Visually appealing, perceptually uniform colormaps.

Documentation

The documentation is published on readthedocs.

Installation

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 ultraplot

Likewise, an existing installation of UltraPlot can be upgraded to the latest version with:

pip install --upgrade ultraplot
conda upgrade ultraplot

To 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.

If you use UltraPlot in your research, please cite it using the following BibTeX entry:

@software{vanElteren2025,
  author       = {Casper van Elteren and Matthew R. Becker},
  title        = {UltraPlot: A succinct wrapper for Matplotlib},
  year         = {2025},
  version      = {1.57.1},
  publisher    = {GitHub},
  url          = {https://github.com/Ultraplot/UltraPlot}
}