python - Matplotlib:如何获得颜色图的反函数?

标签 python matplotlib colormap inverse

<分区>

在 matplotlib 中,颜色映射是将 0 到 1 之间的数字映射到表示颜色的 R、G、B 和 A 分量的 4 元组的函数。如果我有这样一个颜色图,比如说 plt.cm.jet,有没有办法得到那个函数的反函数,这是一个将 4 元组映射回 0 之间的原始数字的函数和 1?

示例:

import matplotlib.pyplot as plt
import numpy as np

values = np.random.rand(10, 10)  # could be any array
colors = plt.cm.jet(values)
values2 = # ... somehow compute values from colors here
assert values == values2

最佳答案

假设映射是双射的,您可以创建一个字典,其中颜色是键

reversemap={}
for color,value in zip(colors,values):
    reversemap[color] = value

不幸的是,有几个颜色图不是双射的,在这些情况下,反转映射是不适定的。

关于python - Matplotlib:如何获得颜色图的反函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53729390/

相关文章:

python - 为什么 tensorflow 模型总是预测同一类?

python - matplotlib + python : figure size for fig. figimage 和 fig.savefig

python - Matplotlib 自动缩放共享 x 轴图形的子图的垂直高度

python - 如何使用颜色图绘制 matplotlib 线图?

python - matplotlib 中带有箭袋图的自定义颜色条

python - 使用我的数据框打印标题

python - 使用 Python 中的 POST 请求通过网站表单上传基本文件

python - 如何教卷积神经网络对未知图像说 "no"?

python - 在 python 中可视化数据

python - matplotlib 中的恒定颜色图。