【问题标题】:R or python, gradient of colors ranging from color1 to color2R或python,颜色渐变,从color1到color2
【发布时间】:2021-03-05 12:44:28
【问题描述】:

我正在尝试在不同的显微镜色调上对材料上发生的化学反应进行分类。我有我的刻度两端的参考颜色,它们在所有扩展中都是同质的,所以基本上我只有 RGB 代码作为启动器。颜色 1 是白色和 2 红色,所以我必须在白色和红色调之间移动,仅此而已。

我已经读过 colorrampPalette 在 R 中可能很有用,但它适用于预制颜色,我只是这方面的新手,我尝试研究,但没有什么适合我想要的,你有什么建议我?谢谢

附言也可以使用 Python

【问题讨论】:

    标签: python r gradient


    【解决方案1】:

    不知道有没有这样的功能,写一个挺简单的:

    def gradients(color1, color2, steps):
        # colors are tuples of ints representing RGB values
        r1, g1, b1 = color1  # break color into separate values
        r2, g2, b2 = color2
        step_r = (r2 - r1) / steps  # given n-steps, define step size for each color change
        step_g = (g2 - g1) / steps
        step_b = (b2 - b1) / steps
        return [(int(r1 + step_r * i), # produce list of color applying respective step size over each iteration
                 int(g1 + step_g * i), 
                 int(b1 + step_b * i)) for i in range(steps)]
    

    结果:

    >>> gradients((0,0,0), (255, 255, 255), 3)
    >>> [(0, 0, 0), (85, 85, 85), (170, 170, 170)]
    

    【讨论】:

    • 好的,我现在明白了,抱歉,我没有解释清楚。这就是事情。我的 RGB 比例中的红色 (1) 在顶部,蓝色在底部 (0),这是我最感兴趣的两种颜色,特别是 (151,132,149) 和 (184,189,189)。我正在尝试做一些事情,以便当我要求机器读取图像时,会返回一个介于 0 和 1 之间的值,其中 1 是最红的。所以它就像一个插值,用 R 更容易吗?
    • @ReneThibautQuezada 所以你想要这个:你设置两个极端颜色,你输入 0 和 1 之间的值,函数返回相应的颜色?
    猜你喜欢
    • 2021-04-10
    • 2020-11-27
    • 2019-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-01
    • 2012-06-19
    • 1970-01-01
    相关资源
    最近更新 更多