pet*_*ner 1 javascript chart.js
我正在使用图表JS绘制一个饼图,其中包含数据库中的一些数据.问题是我不知道图表上可能出现多少元素,因此生成背景颜色有点困难.
有没有选项,所以图表js会随机生成这些颜色?
不,chartjs没有这个选项.
我想你有两个选择:
如果您知道最大值(例如:不会超过10个值),那么您可以创建一个包含10种颜色的数组并将第一种颜色分配给您拥有的元素(例如:如果您有5个元素,则指定第一个颜色它们有5种颜色).你可以很容易地随机化,例如在数组中开始赋值的位置,每次仍然得到不同的颜色集.
如果您希望保持颜色与特定颜色主题相匹配,则此方法即可.
如果您不关心颜色主题,我认为最简单的方法是随机生成颜色.使用此功能,您只能希望不会获得两倍相同的颜色(非常不可能):
function getRandomColor() {
var letters = '0123456789ABCDEF';
var color = '#';
for (var i = 0; i < 6; i++ ) {
color += letters[Math.floor(Math.random() * 16)];
}
return color;
}
console.log(getRandomColor());Run Code Online (Sandbox Code Playgroud)