2017-02-10 9 views
0

私はcharts.jsライブラリで作業しています。グラフの単位にランダムな色を生成する必要があります。Javascriptは同じ色のハイライトを持つランダムな色を生成します

私はそうする方法について多くの答えを見ました。例えばAnatoliy answerのように。

問題は、charts.js Pieの「ハイライト」フィールドを満たすのと同じハイライトカラー(または近い色)が必要です。

{ 
    value: 300, 
    color: "#30a5ff", 
    highlight: "#62b9fb", 
    label: "Label" 
}, 
+0

あなたが否決した場合、少なくとも説明を供給してください。私はこれがcharts.jsを使って作業するときの非常に一般的なシナリオだと思います。 – Jacob

+1

オリジナルの色とハイライトの色の関係は何ですか?色補完? 2つのランダムに異なる色だけ?同じ色相だが、より暗く/明るい? ... –

+0

私が書いたように、近い色はうまくいくでしょう、明るい方が完璧です。 – Jacob

答えて

2

これは、さまざまな解決策の1つです。 0と360の間のランダムな色相を取得します。 "ハイライト"カラーの場合、100%彩度と50%明度を使用し、100%彩度と80%明度を使用します。 「ランコードスニペット」ボタンをクリックし続けると、よりランダムな色が表示されます。

document.querySelectorAll('div').forEach(d => { 
 
    const hue = Math.floor(Math.random() * 360); 
 
    d.style.backgroundColor = `hsl(${hue}, 100%, 50%)`; 
 
    d.style.borderColor  = `hsl(${hue}, 100%, 80%)`; 
 
});
div { 
 
    display: inline-block; 
 
    width: 20px; 
 
    height: 20px; 
 
    border: solid 5px; 
 
    margin: 5px; 
 
}
<div></div> 
 
<div></div> 
 
<div></div> 
 
<div></div> 
 
<div></div> 
 
<div></div> 
 
<div></div> 
 
<div></div> 
 
<div></div> 
 
<div></div>

関連する問題