2013-08-01 3 views
0

빨강에서 초록까지 파랑 색으로 부드럽게 혼합되는 색상 맵을 적용 할 수 있기를 원합니다.html 히트 맵에 올바른 RGB 결정

나에게 분명하다. 이러한 결과를 얻으려면 HSL을 사용하여 이러한 히트 맵을 만든 다음 각 HSL 값을 RGB 값으로 변환해야한다. 그러나 어떻게 솔루션을 구현 해야할지 모르겠다.

다음은 테이블 요소를 사용하고 적용 할 RGB 색상을 결정하는 코드의 일부입니다. 이 경우, "응집 에너지"여기

var td = document.createElement('td'); 
       cellKey = sprintf('%s,%s', m1, m2); 
       if (_.has(table['cells'], cellKey)) { 
        var diff = table['max'] - table['min']; 
        diff = Math.max(1, diff); // prevent divide by zero when max == min. 
        var val = table['cells'][cellKey]['value']; 
        var pct = (val - table['min'])/diff; 
        var blue = Math.floor(255 * (1 - pct)); 
        var red = Math.floor(255 * pct); 
        if (table['type'] == "Cohesive Energy") { 

         var blue = Math.floor(255 * (1 - pct)); 

         var red = Math.floor(255 * pct); 

         td.style.background = sprintf('rgb(%d,%d,0)', red, blue); 

        } 

의 테이블 형식을위한 웹 사이트 여기 http://muskoka.ices.utexas.edu/~fri/fridb/server.py

몇 가지 샘플 데이터입니다 : https://docs.google.com/file/d/0B5gGZ4-SD7-ZU0RCWkFwN3JBYWs/edit?usp=sharing

+0

최신 브라우저 (IE9도)는'hsl()'과'hsla()'를 지원합니다. – Pointy

답변

1

당신이보고 싶을 수도 Chroma.js. 그것은 다양한 범위와 색상 공간을위한 색상 스케일의 생성과 색상 변환을 처리 할 라이브러리입니다.

관련 문제