我使用的是HTML表格熱圖jQuery腳本由:第三色彩層次添加爲Javascript/jQuery文檔表熱圖
http://www.designchemical.com/blog/index.php/jquery/jquery-tutorial-create-a-flexible-data-heat-map/
我已經能夠修改它,並把它清理乾淨,可以正常使用與我們的數據集。但是,當前腳本只允許使用兩種顏色,並且不計算具有標準偏差的介質以包含第三種顏色,例如黃色。
這裏是低於當前的腳本:
<script type="text/JavaScript">
$(document).ready(function() {
// Function to get the Max value in Array
Array.max = function (array) {
return Math.max.apply(Math, array);
};
// get all values
var counts = $('.heatmap tbody td').not('.first_row').map(function() {
return parseInt($(this).text().replace(/,/g, "").replace(/\(|\)/g, ""));
}).get();
// return max value
var max = Array.max(counts);
// red color for lowest data
xr = 251;
xg = 121;
xb = 105;
// green color for highest data
yr = 138;
yg = 251;
yb = 107;
n = 100;
// add classes to cells based on nearest 10 value
$('.heatmap tbody td').not('.first_row').each(function() {
var val = parseInt($(this).text().replace(/,/g, "").replace(/\(|\)/g, ""));
var pos = parseInt((Math.round((val/max) * 100)).toFixed(0));
red = parseInt((xr + ((pos * (yr - xr))/(n - 1))).toFixed(0));
green = parseInt((xg + ((pos * (yg - xg))/(n - 1))).toFixed(0));
blue = parseInt((xb + ((pos * (yb - xb))/(n - 1))).toFixed(0));
clr = 'rgb(' + red + ',' + green + ',' + blue + ')';
$(this).css({
backgroundColor: clr
});
});
});
</script>
熱圖目前由紅色變爲綠色,我想補充的計算,對於中程增加了黃色。我在這裏創建了一個jsFiddle:http://jsfiddle.net/7z8D4/與我正在使用的腳本和熱圖表結構。
例如,如果我有下面的數據集,它應該是彩色的,如:
1 red
2 red
3 pink
4 pink
5 yellow
6 yellow
7 lime green
8 lime green
9 green
10 green
我真的很感激有這方面的見解。 :)
+ 1,並在演示形式爲http:/ /jsfiddle.net/7z8D4/1/ – 2013-03-15 15:35:09
太棒了!謝謝! – 2013-03-15 15:36:48