Python:将浮动范围 [0.0, 1.0] 映射到颜色范围 [红色、绿色]?

mat*_*ias 5 python colors range

我有一个函数在区间 [0.0, 1.0] 中返回浮点结果。我想使用颜色范围从 0.0 的红色到 1.0 的绿色(可能是 0.5 的黄色)来可视化结果。我怎么能那样做?谢谢!

fvu*_*fvu 4

我认为最简单的方法是在HSL/HSB (色相饱和度亮度)中工作,其中最大值的 0-33% 的色相值将映射到红-橙-黄-绿范围。使用 HSL(相对于 RGB)的优点是生成的颜色范围会更好看(例如,RGB 中的亮黄色包含少量蓝色)。

因此基本上您将根据常数 S 和 L 值以及对应于的 H 创建一个值

your_value * (1/3 of the maximum H value, often 255)
Run Code Online (Sandbox Code Playgroud)

然后将该值转换回 RGB 以进行显示。不了解Python(对我来说很丢脸),但显然colorsys 模块可以为你完成这种转换。