Ale*_*x R 5 html php algorithm heatmap graph-algorithm
我的问题与将任何正整数转换为RGB值的算法有关但实际上它不是同一个问题 - 那个人主要是数据规范化问题,实际上我有更多的审美颜色选择问题.
我有一堆介于-1.0和+1.0之间的数字.我需要创建一个叠加文本的热图.
使用PHP的最简单方法是将每个数字转换为HTML颜色(#rrggbb),这样生成的颜色不仅直观地与温度相关(即最冷的最热,最热的最红,最流畅的一些)两者之间的过渡)但它也适合作为黑色文本的背景颜色?
Ple*_*and 12
我将它实现为红色和蓝色组件之间的简单线性渐变,使用sprintf函数编码为十六进制值:
function toHeatColor($full) {
$positive = ($full + 1) / 2;
return sprintf("#%02xcc%02x", $positive * 51 + 204, (1 - $positive) * 51 + 204);
}
Run Code Online (Sandbox Code Playgroud)
您可以看到http://jsfiddle.net/9QQkU/的颜色范围.相应的值为-1,-0.75,0,0.75和1.