Python的科学色图,无依赖
项目描述
cmap
Python的科学色图,不依赖numpy。
使用cmap
,您可以在Python代码中使用来自matplotlib、cmocean、colorbrewer、crameri、seaborn和其他集合中的任何色图,而无需安装matplotlib或其他依赖项。
:book: 查看完整目录
有许多Python库提供或需要色图或基本颜色支持,但它们都依赖于matplotlib,提供一组旨在扩展matplotlib提供的色图的专业色图,或者滚动自己的色图解决方案,该解决方案供应商/重复其他库。
cmap
是一个轻量级的库,它提供了一大批不需要额外依赖(除了 numpy)的色彩映射。它支持导出到多个已知的第三方色彩映射对象,允许它在广泛的 Python 可视化库中使用。目的是提供一个任何需要色彩映射的 Python 库都可以使用的库,而不强迫用户安装 matplotlib(尽管仍然与 matplotlib 及其他使用 matplotlib 色彩映射的库兼容)。
cmap
类型严格且经过全面测试,注重良好的开发者体验。
安装
pip install cmap
conda install -c conda-forge cmap
使用
有关详细信息,请参阅 文档。
cmap.Color
cmap.Color
对象是一个简单的 RGBA 索引元组的包装器,提供了一些方便的方法用于转换为其他色彩对象。
from cmap import Color
red = Color("red") # or a variety of other "color like" inputs
cmap.Colormap
cmap.Colormap
对象是一个可调用的对象,可以将标量值(或数值的 numpy 数组)映射到 RGBA 色彩(或 RGBA 色彩的 numpy 数组)。API 设计旨在模拟 matplotlib.colors.Colormap
对象的行为(而不需要 matplotlib)
In [1]: import cmap
# or a variety of other "colormap like" inputs
In [2]: cmap1 = cmap.Colormap(["red", "green", "blue"])
In [3]: cmap1(np.linspace(0,1,5))
Out[3]:
array([[1. , 0. , 0. , 1. ],
[0.50393701, 0.24900417, 0. , 1. ],
[0. , 0.50196078, 0. , 1. ],
[0. , 0.24900417, 0.50393701, 1. ],
[0. , 0. , 1. , 1. ]])
注意,输入数组必须归一化到 0-1,因此如果您将色彩映射应用于整数数组(如图像),则在将其传递给 Colormap
之前必须应用任何对比度限制并重新缩放到 0-1。
第三方库支持
cmap.Colormap
对象有方便的方法可以将它导出到多个已知的第三方色彩映射对象,包括
有关详细信息,请参阅 文档。
如果您希望添加对特定库的支持,请打开一个问题或 PR。
替代方案
提供色彩映射的其他库
- matplotlib
- seaborn(matplotlib 的子类)
- proplot(matplotlib 的子类)
- palettable(主要数据,导入不依赖于 matplotlib,但使用很大程度上依赖)
- cmocean(主要数据,输出 matplotlib 色彩映射)
- colorcet(主要数据,使用需要 matplotlib 或 bokeh)
- cmasher(需要 matplotlib)
- cmyt(需要 matplotlib)
- cmcrameri(需要 matplotlib,包装 https://www.fabiocrameri.ch/colourmaps/)
- distinctipy(生成不同的颜色集,仅需要 numpy)
- mplcyberpunk(需要 matplotlib)
- Farrow & Ball Matplotlib(需要 matplotlib)
参考和进一步阅读
- 在 Matplotlib 中选择色彩映射
- Matplotlib 的更好的默认色彩映射 | SciPy 2015 | Nathaniel Smith 和 Stéfan van der Walt
- 以上视频的博客文章:https://bids.github.io/colormap/
- 色彩映射的起源,Cleve Moler,2015 年 2 月 2 日
- 记录 matplotlib 色彩映射,@endolith
- 科学可视化中的色彩映射建议
- https://colorcet.com/,Peter Kovesi
- Kovesi:好的色彩映射:如何设计它们。
- https://www.fabiocrameri.ch/colourmaps/
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源代码发行版
构建发行版
cmap-0.3.0.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 01ddd3f7b3abc42c3c126d2a590e8c03615a32be2b184ba68a69a2798f4fe460 |
|
MD5 | 79a84179d34a35fe765091fc9bfeaf75 |
|
BLAKE2b-256 | 1d9754edd701b113984bebb583df87c43f511c9fc27ba37ac95f5c5fe06a38c9 |
cmap-0.3.0-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 1cafd3085c7635ab04c958b2421442c3306340f48cc8ad491087cd5fe12ddbc3 |
|
MD5 | 4a162a9f38f94990104eed57467f78ae |
|
BLAKE2b-256 | b590e438d76f99df7894c0bc2810ccc563e4e403364ea2efa324562ef5c2072e |