我建立了一些應用程序,計算顏色的梯度取決於某些值。 我用d3.js來計算顏色,但是我認識到這個函數真的很慢 - 它在80ms內執行(執行這個函數的次數是40.000次)。這對我來說很重要(我多次使用)根據整數值查找顏色 - 快速算法
var findColor = d3.scaleLinear().domain([0,10,20,30,40,50,60,70,80,90,100,110]).range(['#a50026 ','#d73027 ','#f46d43 ','#fdae61 ','#fee08b ','#ffffbf ','#d9ef8b ','#a6d96a ','#66bd63 ','#1a9850 ','#006837 ','#006837 ']);
你能告訴我什麼是更好的解決方案嗎?我需要更快的想法。
帶50個盒子的開關會更好,更快嗎?
看看這個小提琴:https://jsfiddle.net/xrjwmnbL/3/我做了一些測試,但結果是太好了,以至於不真實;您可能想要在應用程序中,在真實情況下,用真實數據對其進行測試。 – Thomas
(邊緣速度提高3倍,熱身後,FF && Chrome:O速度提高10-20倍)恐怕,這可能只是基準測試的一些巧妙優化的結果。 – Thomas
@Thomas你的jsfidle真棒。謝謝,你的幫助。在「回答」中加入這個,所以我可以接受這個 –