我使用图表JS绘制一个饼图,其中包含数据库中的一些数据。问题是我不知道图表上可能出现多少元素,因此生成背景颜色有点困难。
有没有选项,所以图表js会随机生成这些颜色?
答案 0 :(得分:5)
不,chartjs没有附带此选项。
我猜你有两个选择:
如果您知道最大值(例如:赢得超过10个值),那么您可以制作一个包含10种颜色的数组,并为您拥有的元素指定第一种颜色(例如:如果你有5个元素,为它们分配前5种颜色)。您可以轻松地随机化,例如数组中的任务开始时,每次都会得到不同的颜色集。
如果您希望保持颜色与特定颜色主题相匹配,此方法即可。
如果您不关心颜色主题,我认为最简单的是generate the colors randomly。使用此功能,您只能希望不会获得两倍相同的颜色(非常不可能):
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());
&#13;