跳转到主要内容

科学调色板,用于制作易于访问、信息丰富和具有“cmashing”效果的图表

项目描述

PyPI - Latest Release Conda-Forge - Latest Release PyPI - Python Versions GitHub Actions - Build Status CodeCov - Coverage Status JOSS - Submission Status

CMasher:科学调色板,用于制作易于访问、信息丰富和具有“cmashing”效果的图表

《CMasher》包提供了一组科学调色板和实用函数,供不同的《Python》包和项目使用,主要与matplotlib结合使用,详情请参考在线文档(其中我还描述了如何在其他语言和应用程序中使用调色板)。《CMasher》中的调色板都是使用viscm包设计的感知均匀的顺序调色板;大多数都是色盲友好型;并涵盖了广泛的颜色组合,以适应大多数应用。它提供了几种常用调色板的替代方案,如《jet》的《chroma》和《rainforest》;《hot》的《sunburst》;《binary》的《neutral》;以及《coolwarm》的《fusion》和《redshift》。如果您找不到您理想的调色板,请提交问题,提供您想要的颜色和/或风格,我将尽力为您创建一个喜欢的调色板!让我们一起摆脱世界上所有的糟糕调色板!

如果您在工作中使用了《CMasher》,请为仓库点星,这样我可以跟踪有多少用户使用它,并更容易提高对糟糕调色板的意识。此外,如果您在科学出版物中将《CMasher》作为工作流程的一部分,请考虑引用《CMasher》论文BibTeX: cmr.get_bibtex)。

调色板概览

以下是对《CMasher》中目前所有调色板的概览(使用cmr.create_cmap_overview()函数创建)。更多信息,请参阅在线文档

CMasher Colormap Overview

在图中,可以看到《CMasher》提供的广泛颜色组合,因为我想要确保《CMasher》有一个调色板适合每个人。因此,《CMasher》的顺序调色板从单一的调色板如《amber》、《ember》、《flamingo》、《freeze》、《gothic》和《jungle》,到具有高感知范围的调色板如《apple》、《chroma》、《torch》、《neon》和《rainforest》。《CMasher》中的发散调色板也有类似的多样性,但更重要的是,其中一些调色板具有黑色中心而不是白色中心,如《iceburn》、《redshift》、《watermelon》和《wildfire》。黑色中心的发散调色板相当罕见,因为大多数研究人员习惯了白色中心的调色板,尽管在某些情况下,如绘制径向速度图时,黑色中心的发散调色板可能非常有用(离共同中心越远,任一方向的速率越高,相应的颜色应该越亮)。

安装 & 使用

如何安装

《CMasher》可以直接从PyPI使用以下命令安装:

$ pip install cmasher

或从conda-forge使用以下命令安装:

$ conda install -c conda-forge cmasher  # If conda-forge is not set up as a channel
$ conda install cmasher                 # If conda-forge is set up as a channel

如果需要,也可以克隆仓库并手动安装《CMasher》。

$ git clone https://github.com/1313e/CMasher
$ cd CMasher
$ pip install .

现在,可以使用import cmasher as cmr将《CMasher》导入为包。

除了Python之外,《CMasher》的调色板还可以在各种其他语言和应用程序中访问。支持《CMasher》的所有已知语言和应用程序的列表可以在这里找到。

示例使用

通过简单地导入《CMasher》即可访问上述调色板。这使得它们除了在《cmasher》模块中可用之外,还注册到《matplotlib》的《cm》模块(添加了《cmr.'》前缀以避免名称冲突)。例如,如果使用《rainforest》调色板,可以这样操作:

# Import CMasher to register colormaps
import cmasher as cmr

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

# Access rainforest colormap through CMasher or MPL
cmap = cmr.rainforest                   # CMasher
cmap = mpl.colormaps['cmr.rainforest']  # MPL

# 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()

对于其他用例,包括CMasher实用函数概述以及如何在其他编程语言和应用程序中使用CMasher,请参阅在线文档

项目详情


下载文件

下载适合您平台文件的文件。如果您不确定该选择哪个,请了解更多关于安装包的信息。

源代码分发

cmasher-1.8.0.tar.gz (525.5 kB 查看哈希值)

上传时间 源代码

构建分发

cmasher-1.8.0-py3-none-any.whl (533.3 kB 查看哈希值)

上传时间 Python 3

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面