Skip to main content

A collection of Matplotlib colormaps from the yt project

Project description

cmyt

PyPI Supported Python Versions

CI CI (bleeding edge) pre-commit.ci status

yt-project Code style: black

Matplotlib colormaps from the yt project !

Colormaps overview

The following colormaps, as well as their respective reversed (*_r) versions are available

Perceptually uniform sequential colormaps

Monochromatic sequential colormaps

Miscellaneous

Installation

python3 -m pip install cmyt

Usage

cmyt integrates with matplotlib in a similar fashion to cmocean or cmasher

import numpy as np
import matplotlib.pyplot as plt
import cmyt  # that's it !

# generate example data
prng = np.random.RandomState(0x4D3D3D3)
noise = prng.random_sample((100, 100))
x, y = np.mgrid[-50:50, -50:50]
z = 5 * np.exp(-(x ** 2 + y ** 2) / 1000)

# setup the figure
fig, ax = plt.subplots()
ax.set(aspect="equal")

# now we can refer to cmyt colormaps as strings
im = ax.pcolormesh(x, y, z + noise, cmap="cmyt.arbre", shading="flat")
fig.colorbar(im, ax=ax)

# alternatively, cmyt maps can also be imported as objects
from cmyt import pastel

fig, ax = plt.subplots()
ax.set(aspect="equal")
im = ax.contourf(x, y, z + noise, cmap=pastel)
fig.colorbar(im, ax=ax)

A gallery of comparable examples using all colormaps from cmyt is available in the test directory.

About versionning

cmyt uses semantic versioning as defined by https://semver.org.

In practice this means that new colormaps may be added in minor patches, and any backward incompatible change to existing colormaps will happen as a major change. Likewise, adding support for new Python/Matplotlib versions will be considered minor changes, while droping support for EOL Python/Matplotlib version will be considered major. If you're developing a library that depends on cmyt, we recommend to set an explicit upper limit as well as a minimal one in your requirements as for instance

cmyt >= 0.1.1, < 1.0.0

with the minimal required version pointing to the e.g. the last colormap addition your need, and the upper limit preventing your CI to upgrade to a major change without your knowing. Also note that only the top level of the package is considered public API.

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

cmyt-1.0.0.tar.gz (25.2 kB view details)

Uploaded Source

Built Distribution

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

cmyt-1.0.0-py3-none-any.whl (29.1 kB view details)

Uploaded Python 3

File details

Details for the file cmyt-1.0.0.tar.gz.

File metadata

  • Download URL: cmyt-1.0.0.tar.gz
  • Upload date:
  • Size: 25.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for cmyt-1.0.0.tar.gz
Algorithm Hash digest
SHA256 582673592e037e3c3f36f46e1ae103cb53958cee9659e8e418a7314f8a4be5dc
MD5 2f7306ca88a551525f9c66279f86d83e
BLAKE2b-256 7d0beaf135510c4e945c1a513f6394f07dce193d464a9fa9b164d3aecd281149

See more details on using hashes here.

File details

Details for the file cmyt-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: cmyt-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 29.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for cmyt-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 92dc1f81482bc660da26166fcabfc13f2f5ddf1a0f86fe2d64d3ad36389f14da
MD5 2a6c01c965f721ab873c269541f0d556
BLAKE2b-256 1ddb14ca39ca98867ee77541aed39cd24d67c200888ef739c83220019d982fee

See more details on using hashes here.

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