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

Uploaded Python 3

File details

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

File metadata

  • Download URL: cmyt-0.2.2.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-0.2.2.tar.gz
Algorithm Hash digest
SHA256 789b1867fca46c8956be97fb52ce7cc406c6a0658aef1b23f836ed240140eaf5
MD5 ac60c7cde5c82438ad263480366ba2a8
BLAKE2b-256 470091ab43d28faef679f0e3823253ad5817ad0c803e9f6a99b5bab3c0fba993

See more details on using hashes here.

File details

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

File metadata

  • Download URL: cmyt-0.2.2-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-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 e02c67c8f0cd022837a823ed74a655b069a9e091fa31a8b99339b0a47db41065
MD5 73bf73f5959b55821228095b01c69853
BLAKE2b-256 296794da757c374ce622c78ddd51316bb8c8f3a32af781f476c7322a56b2a8a7

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