Python 从数量到RGB颜色的连续映射?

Python 从数量到RGB颜色的连续映射?,python,colors,Python,Colors,在Python代码中,我在画布上绘制了一些点。每一点都有一个相关的量f(P),其中f是一个取值于[0,f_{max}]之间的函数 我想给点上色,这样颜色对应于f(p)的值,映射应该是连续的 问题是python中的颜色是以RGB格式表示的,换句话说,是一个由3个变量组成的函数,因此我不确定如何处理这个问题。您可以从(色调、饱和度、值)映射到RGB,根据标量值改变色调,并将饱和度和值设置为常量 import colorsys def scalar_to_rgb(scalar): retur

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

我想给点上色,这样颜色对应于f(p)的值,映射应该是连续的

问题是python中的颜色是以RGB格式表示的,换句话说,是一个由3个变量组成的函数,因此我不确定如何处理这个问题。

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

import colorsys

def scalar_to_rgb(scalar):
    return colorsys.hsv_to_rgb(scalar, 1, 1)
在将值传递给函数之前,将其缩放到0到1之间。颜色环绕,1将给出与0相同的结果。如果这是一个问题,则只能使用0和1之间范围的一部分