数量与RGB颜色之间的连续映射?

时间:2017-09-22 08:36:34

标签: python colors

在我的Python代码中,我在画布上绘制了一些点。对于每个点,存在关联量f(P),其中f是取值为[0,f_ {max}]的函数。

我想对点进行着色,使得颜色对应于f(P)的值,并且映射应该是连续的。

问题是python中的颜色以RGB格式表示,换句话说是3个变量的函数,所以我不确定如何处理它。

1 个答案:

答案 0 :(得分:3)

您可以从HSV(色调,饱和度,值)映射到RGB,根据标量值改变色调,并将饱和度和值设置为常量。

import colorsys

def scalar_to_rgb(scalar):
    return colorsys.hsv_to_rgb(scalar, 1, 1)

在将值传递给函数之前,将值缩放到0到1之间。颜色环绕,1将得到与0相同的结果。如果这是一个问题,则只能使用0到1之间的部分范围。