2013-05-01 24 views
2

JavaScript。我有數字 var values = [1,20,12,6,9];如何創建具有特定漸變分佈的HTML顏色數組?

我需要創建相同大小的新陣列的陣列,使得:

  1. 對應於最大元件第一 陣列中的元件是ALWAYS "#3E296B"
  2. 與第一個陣列的最小元素對應的元素始終是"#FFFFFF"
  3. 其他元素應該得到漸變顏色的"#3E296B" segueing到"#FFFFFF"比例,以他們的價值觀

即我的新陣應該大約一樣:var colors = [white, blue, less_blue, less_less_blue, less_blue](我所寫簡化)

+0

@Rick Viscomi我試圖連接RGB值。我被卡住的字母,我的意思是它不是十六進制的,所以我不知道如何指定A大於9等... – Buras 2013-05-01 02:16:53

回答

5

這裏是一個庫這解決了這個確切的問題:

https://github.com/anomal/RainbowVis-JS

所以包括它之後,你會做點事如:

var rainbow = new Rainbow(); 
rainbow.setSpectrum('#ffffff', '#3E296B'); 
rainbow.setNumberRange(1, 20); 
rainbow.colourAt(number); // based on the numbers from your array, this would return the color you want 
+0

謝謝,它完美的作品 – Buras 2013-05-01 02:42:31