Skip to main content

Scientific colormaps for making stunning and 'cmashing' plots

Project description

PyPI - Latest Release PyPI - Python Versions Travis CI - Build Status AppVeyor - Build Status ReadTheDocs - Build Status CodeCov - Coverage Status

Description

This package contains a collection of scientific colormaps for making stunning and cmashing plots, showcased in the online documentation. The colormaps in CMasher are all designed to be perceptually uniform sequential, most of them are color vision deficiency (CVD; colorblind) friendly and they cover a wide range of different color combinations to accommodate for most applications. It offers several alternatives to commonly used colormaps, like chroma and rainforest for jet; sunburst for hot; neutral for binary; and fusion and redshift for coolwarm. If you cannot find your ideal colormap here, then please open an issue, provide the colors and/or style you want, and I will try to create one to your liking! Let’s get rid of all bad colormaps in the world together!

If you use CMasher for your work, then please star the repo, such that I can keep track of how many users it has and more easily raise awareness of bad colormaps.

Colormap overview

Below is an overview of all the colormaps that are currently in CMasher. For more information, see the online documentation.

CMasher Colormap Overview

Installation & Use

How to install

CMasher can be found in the PyPI system, so pip install cmasher should suffice.

Example use

The colormaps shown above can be accessed by simply importing CMasher (which automatically executes the import_cmaps function on the cmasher/colormaps directory). This makes them available in CMasher’s cm module, in addition to registering them in matplotlib’s cm module (with added 'cmr.' prefix to avoid name clashes). So, for example, if one were to use the rainforest colormap, this could be done with:

# Import CMasher to register colormaps
import cmasher as cmr

# Import packages for plotting
import matplotlib.pyplot as plt
import numpy as np

# Access rainforest colormap through CMasher
cmap = cmr.rainforest

# Access rainforest colormap through MPL
# CMasher colormaps in MPL have an added 'cmr.' prefix
cmap = 'cmr.rainforest'

# Generate some data to plot
x = np.random.rand(100)
y = np.random.rand(100)
z = x**2+y**2

# Make scatter plot of data with colormap
plt.scatter(x, y, c=z, cmap=cmap, s=300)
plt.show()

Accessing the colormaps in other packages than matplotlib would require reading in the text-files in the cmasher/colormaps directory, which contain the normalized RGB values (multiply by 255 for regular 8-bit values) of every colormap, and registering them in the package manually. For those that are interested, the viscm source files that were used for creating the colormaps can also be found in the cmasher/colormaps directory in the repo (the source files are not provided with the package distribution).

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

cmasher-1.1.4.tar.gz (228.5 kB view hashes)

Uploaded Source

Built Distributions

cmasher-1.1.4-py3-none-any.whl (232.7 kB view hashes)

Uploaded Python 3

cmasher-1.1.4-py2-none-any.whl (232.7 kB view hashes)

Uploaded Python 2

Supported by

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