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 Checkout our examples Below is a gallery showing random examples of what UltraPlot can do, for more examples checkout our extensive docs. Subplots & Layouts Create complex multi-panel layouts effortlessly. Cartesian Plots Easily generate clean, well-formatted plots. Projections & Maps Built-in support for projections and geographic plots. Colorbars & Legends Customize legends and colorbars with ease. Insets & Panels Add inset plots and panel-based layouts. 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} }