Skip to main content

PROTEUS Thermocline matplotlib theme: brand color cycles, phase colormaps, light + dark variants.

Project description

proteus-mpl

PROTEUS Thermocline matplotlib theme. Publication-grade figures whose colors, fonts, and surfaces match the slides, the website, and the docs.

Install

pip install proteus-mpl

From a checkout of the repository: pip install figures/proteus-mpl (or cd into the folder and pip install .).

Use

import proteus_mpl
proteus_mpl.use()           # light: Paper background — papers, light slides
# proteus_mpl.use("dark")   # dark: Void background — dark slides, hero figures
# proteus_mpl.use("white")  # light theme on pure white — journal pages

What you get

  • Cycles — both neutral-first, so a single-series plot draws in ink (light) / paper (dark) and magma stays a deliberate signal. Light (proteus_mpl.CYCLE, 9 colours): ink, magma, solar, verdant, ocean, tidal, outgassing, fog, azure; CVD worst-pair ΔE 15.7 (Machado 2009). Dark (CYCLE_DARK, 6 colours): paper, magma, solar, and light-safe tones; ΔE 16.8. Past the cycle, switch line style (solid/dashed/dotted/dash-dot) instead of adding hues, and keep legends on multi-series plots.
  • AccentsCOLORS["solar"] (#E0A32E, the star) with COLORS["solar_deep"] (#C8860F) for gold fills or thin marks on light surfaces, and COLORS["verdant"] (#57A05C, the habitable endpoint).
  • Module domain colorsproteus_mpl.DOMAINS["interior"] etc. Use these whenever a line is a module (SPIDER output → interior red, MORS → solar gold). Stable across every paper, talk, and diagram.
  • Colormapsproteus (sequential, Void→Paper; default for imshow / pcolormesh; the one ramp that survives greyscale reproduction), proteus_div (diverging, light midpoint — print-safe for anomalies/residuals), proteus_phase (the brand ramp, magma→void→ocean, dark midpoint — hero figures and dark slides). _r reversals registered.
  • Type — Instrument Sans labels, Spline Sans Mono available for ticks via fontfamily="Spline Sans Mono"; titles bold, left-aligned. The OFL brand fonts ship inside the package and register automatically on use().
  • Publication settings — 300 dpi savefig, tight bbox, TrueType embedding (fonttype 42), text-as-paths SVG. Prefer fig.savefig("fig.pdf").

The cycle on each surface

light cycle dark cycle

Regenerate with python examples/cycle.py.

Conventions

  • Size figures at final printed size (A&A column ≈ 3.5 in) and keep default font sizes — never shrink a huge figure down.
  • Light figures on light surfaces, dark figures on dark — no visible card.
  • Journal white pages: use("white"), or transparent=True at savefig.
  • Magma is the hot signal: reserve it for the series you want the room to look at. Everything else starts from Ocean.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

proteus_mpl-1.1.2.tar.gz (183.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

proteus_mpl-1.1.2-py3-none-any.whl (180.3 kB view details)

Uploaded Python 3

File details

Details for the file proteus_mpl-1.1.2.tar.gz.

File metadata

  • Download URL: proteus_mpl-1.1.2.tar.gz
  • Upload date:
  • Size: 183.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for proteus_mpl-1.1.2.tar.gz
Algorithm Hash digest
SHA256 75df181d740737694a78d7593a8f8c7ba8f7928d903fa1c13e3368b9fdf45b67
MD5 089a10303ae860efcf596dacde728bc5
BLAKE2b-256 45c2e7c8e0a2138f57e79795b0f13ab0625e26f93d017dc58930c1cbc0455b0b

See more details on using hashes here.

Provenance

The following attestation bundles were made for proteus_mpl-1.1.2.tar.gz:

Publisher: release.yml on FormingWorlds/proteus-visual-language

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file proteus_mpl-1.1.2-py3-none-any.whl.

File metadata

  • Download URL: proteus_mpl-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 180.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for proteus_mpl-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d2c64fd78e3b8ddc71721113e337c415f17ebd39452048c9ce661e934a090c56
MD5 a1825aaf8af907781ae5f7c3ba65844e
BLAKE2b-256 e5715a739412f945c14836cffc3f6ab7594f8896174eff9063f751cb9b333774

See more details on using hashes here.

Provenance

The following attestation bundles were made for proteus_mpl-1.1.2-py3-none-any.whl:

Publisher: release.yml on FormingWorlds/proteus-visual-language

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page