跳转到主要内容

Python的科学色图,无依赖

项目描述

cmap

License PyPI Conda Python Version CI codecov Documentation Status

Python的科学色图,不依赖numpy。

使用cmap,您可以在Python代码中使用来自matplotlibcmoceancolorbrewercrameriseaborn和其他集合中的任何色图,而无需安装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。

替代方案

提供色彩映射的其他库

参考和进一步阅读

项目详情


下载文件

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

源代码发行版

cmap-0.3.0.tar.gz (591.0 kB 查看哈希值)

上传时间 源代码

构建发行版

cmap-0.3.0-py3-none-any.whl (634.6 kB 查看哈希值)

上传时间 Python 3

支持