rwthplots
Matplotlib style sheets, colormaps, and figure utilities for RWTH Aachen University's corporate design palette.
Developed at the Institute for High Voltage Equipment and Grids, Digitalization and Energy Economics (IAEW), RWTH Aachen University.
What it does
rwthplots brings the official RWTH Aachen corporate design
into Matplotlib — so your thesis, paper, and presentation figures are always
on-brand without manual rcParams setup.
- Style sheets for every output format: LaTeX/thesis, Word, PowerPoint, Beamer, dark-mode
- 38 colormaps (+
_rreversed variants) — discrete, diverging, sequential, and power-system maps - Journal presets for IEEE, Nature, Elsevier, Springer, APS, and ACM
- Accessibility utilities — CVD simulation, colour-confusion detection, greedy
pick_colors() - Figure sizing —
set_size()with 15 paper/journal presets and golden-ratio height - Multi-format export —
save_figure()writes PDF + PNG + SVG in one call
Gallery
RWTH colour palette — 13 base colours × 5 tint levels
Line plot with context() and pick_colors(6)
Colormaps — selection of available maps
Climate stripes — Nordrhein-Westfalen 1881–2025, DWD area average
Installation
pip install rwthplots
Or install the latest development version directly from GitHub:
pip install git+https://github.com/RWTH-IAEW/rwthplots.git
Requires Python ≥ 3.11 and Matplotlib ≥ 3.7.
Quick start
import rwthplots
import matplotlib.pyplot as plt
# Apply a style — all styles and colormaps are registered on import
with rwthplots.context("rwth-latex", "color.blue", "size.ieee-column"):
fig, ax = plt.subplots()
ax.plot(x, y)
rwthplots.save_figure(fig, "results/fig1", formats=["pdf", "png"])
See the Quick Start guide for a full walkthrough.
Style sheets
Base styles
| Name | Use case |
|---|---|
rwthplots.styles.rwth-latex |
LaTeX/PGF, thesis, journal |
rwthplots.styles.rwth-word |
Word, reports |
rwthplots.styles.rwth-pptx |
PowerPoint |
rwthplots.styles.rwth-latex-pptx |
LaTeX-rendered text in PPT |
rwthplots.styles.rwth-latex-beamer |
Beamer slides |
rwthplots.styles.rwth-dark |
Dark background / screens |
Modifier layers
Stack any modifier on top of a base style:
| Category | Examples |
|---|---|
color/ |
color.blue, color.orange, color.green, … (16 total) |
misc/ |
misc.grid, misc.colorblind, misc.sans, misc.no-latex, … |
journals/ |
journals.ieee, journals.nature, journals.elsevier, journals.springer, journals.aps, journals.acm |
size/ |
size.ieee-column, size.a4, size.nature-column, … (15 total) |
Colormaps
38 colormaps registered on import (plus _r reversed variants for all). Key maps:
| Name | Type | Description |
|---|---|---|
extended_RWTH_discrete |
discrete | Full RWTH palette, up to 65 colours (lut=) |
continuous_RWTH_discrete |
discrete | Continuous coverage, 1–65 colours (lut=) |
divergent_RWTH |
diverging | Blue → green → red |
divergent_bm_RWTH |
diverging | Blue – white – magenta |
divergent_gy_RWTH |
diverging | Green – white – yellow |
viridis_RWTH |
sequential | Violet → turquoise → may green → yellow |
thermal_RWTH |
sequential | Black → bordeaux → red → orange → yellow → white (blackbody) |
loading_RWTH |
sequential | Blue → white → yellow → red → bordeaux (line/transformer loading) |
voltage_RWTH |
diverging | Red → orange → green → orange → red (voltage deviation) |
blue_RWTH |
sequential | Blue tint gradient |
| (+ 12 single-colour gradients) | One per RWTH base colour |
Development
git clone https://github.com/RWTH-IAEW/rwthplots.git
cd rwthplots
uv sync --group dev
uv run python -m pytest -q
License
MIT — see LICENSE.txt.
Metadata
Release files for rwthplots 3.3.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| rwthplots-3.3.1.tar.gz | 44.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| rwthplots-3.3.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 98.8 kB
Release files / rwthplots-3.3.1.tar.gz
| Download URL | rwthplots-3.3.1.tar.gz |
|---|---|
| Size | 44.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
37ea2cc7048647637af7649fa19fa28df5300c180de6ba494f67c56fe2b95008
|
|
BLAKE2b-256 checksum How to use checksums |
04873cb87c841465297f08bd3715eb0f2b2ffe68c48bb2034d41a50c0075696a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.
Transparency logRelease files / rwthplots-3.3.1-py3-none-any.whl
| Download URL | rwthplots-3.3.1-py3-none-any.whl |
|---|---|
| Size | 54.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1fbb35aa196cbf5cc98ad5d4b25f8826412e05676c6b6b634103ff370d945124
|
|
BLAKE2b-256 checksum How to use checksums |
ac914e887b956ff3d8721d5b83f3fcb16f95f44a8e768e5b3e4964a9691f7201
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.
Transparency log