2013-01-06 53 views

回答

0

我用Java函數基於一個單一的顏色來產生顏色。 它基本上需要一種顏色 - 將其轉換爲HSV並向Hue添加一個步驟。 飽和度和價值是相當固定的一點隨機性來獲得變化。 我猜的功能還有待改進,但它產生漂亮的顏色:)

private Color getNextColorHue(Color color){ 
    if(color != null){ 
     float hsbVals[] = Color.RGBtoHSB(color.getRed(), color.getGreen(), color.getBlue(), null); 
     hsbVals[0] += STEP; 
     hsbVals[1] = (float) ((Math.random() * 0.3) + 0.7); 
     hsbVals[2] = (float) ((Math.random() * 0.2) + 0.7); 

     if (hsbVals[0] > 1) { 
      hsbVals[0] -= 1; 
     } 
     color = Color.getHSBColor(hsbVals[0], hsbVals[1], hsbVals[2]); 
    } 
    return color; 
} 

應該很容易把它轉換成JS這一點: RGB to HSV color in javascript?

0

看到這個:http://jsfiddle.net/C96tE/2/

用途:

Highcharts.setOptions({ 
colors: ['#50B432', '#ED561B', '#DDDF00', '#24CBE5', '#64E572', '#FF9655', '#FFF263',  '#6AF9C4', '#EAEAEA', '#666999', '#006699'] 
}); 
+0

這工作,如果列數是靜態的,我的是一個動態的。生成隨機顏色看起來是一種選擇。我想知道如果我傳遞一個數字,highcharts是否有任何方法可以給我一個獨特的顏色列表。 – gsk