Javascript 如何使用颜色渐变推断颜色的相对百分比值

Javascript 如何使用颜色渐变推断颜色的相对百分比值,javascript,python,colors,hex,rgb,Javascript,Python,Colors,Hex,Rgb,我需要写一些东西,将通过任何格式,十六进制,rgb等颜色,并根据该颜色将在特定的颜色梯度上找到,一个百分比值可以计算出来 色标 颜色的实际图像可以在中找到 例如,如果颜色最终为FFE8BA,则该颜色将位于0%到10%之间 这并不是我想要帮助的具体代码,我甚至还没有决定使用哪种语言,但它可能是JS或Python,更多的是关于如何分析颜色并将其与特定颜色渐变进行比较以返回颜色的细节 如果有人有这样做的经验,任何建议都将不胜感激 谢谢 这比我想象的要容易得多。我能够找到处理硬部分的现有代码或工具 如果

我需要写一些东西,将通过任何格式,十六进制,rgb等颜色,并根据该颜色将在特定的颜色梯度上找到,一个百分比值可以计算出来

色标 颜色的实际图像可以在中找到

例如,如果颜色最终为FFE8BA,则该颜色将位于0%到10%之间

这并不是我想要帮助的具体代码,我甚至还没有决定使用哪种语言,但它可能是JS或Python,更多的是关于如何分析颜色并将其与特定颜色渐变进行比较以返回颜色的细节

如果有人有这样做的经验,任何建议都将不胜感激


谢谢

这比我想象的要容易得多。我能够找到处理硬部分的现有代码或工具

如果有人想知道我是如何做到这一点的,首先,我生成了一个从FFFFFF到E75800的51色渐变。将它们存储在一个对象中,用键0到100表示百分比,每隔一个数字跳过一次,如下所示:

var colors = {
    0: "FFFFFF",  2: "FEFBF9",  4: "FEF8F4",  6: "FDF4EF",  8: "FDF1EA", 
   10: "FCEEE5", 12: "FCEAE0", 14: "FBE7DB" // Truncated...
}
注意:您不需要每隔一个数字跳过一次。我这么做是因为我链接的Take一次最多只能生成63种颜色是的,我知道我可以多次运行它

然后借用getSimilarColors函数,通过将提供的颜色与先前创建的对象中的值进行比较,找到最接近的匹配。最接近匹配的元素的键是百分比


谢谢。

000000会落在哪里?我的问题是颜色保留了一个空间,而颜色渐变可以表示为该空间中的多段线或曲线。该空间中几乎所有颜色都不会在渐变上,因此您希望如何分配它?示例:在梯度[00FF00,00FFFF,0000FF]上分配FF0000的位置?@MoxieBall-它实际上不会落在任何地方。这意味着采用FFFFFF和E75800之间的颜色范围中存在的颜色。对于我使用它的目的,没有办法选择黑色000000
var colors = {
    0: "FFFFFF",  2: "FEFBF9",  4: "FEF8F4",  6: "FDF4EF",  8: "FDF1EA", 
   10: "FCEEE5", 12: "FCEAE0", 14: "FBE7DB" // Truncated...
}