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.0.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.0-py3-none-any.whl (180.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: proteus_mpl-1.1.0.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.0.tar.gz
Algorithm Hash digest
SHA256 dd6df406f11122bbd27dcbf7112813c1339f4fe275fde4d199bd972235590d86
MD5 00b27fa1fa9fa73d63ee65b8abd426f9
BLAKE2b-256 67cfc504d148fabee31831fe301b8eefe4bdfe604df9c004887ab1eac5c4f9ad

See more details on using hashes here.

Provenance

The following attestation bundles were made for proteus_mpl-1.1.0.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.0-py3-none-any.whl.

File metadata

  • Download URL: proteus_mpl-1.1.0-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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2b81b84a606c1d4ae09c078b7d7fd4f76d3e4f5e151e7ddb58efca5e4ff0f40e
MD5 14cdb0954bd18312e7335aeec1f38a9d
BLAKE2b-256 038e9db079d087c474805401dc8acb9d9df6317631939b64f123b7e24b910035

See more details on using hashes here.

Provenance

The following attestation bundles were made for proteus_mpl-1.1.0-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