鉴于此功能,我想更换颜色与颜色随机发生器.
document.overlay = GPolyline.fromEncoded({
color: "#0000FF",
weight: 10,
points: encoded_points,
zoomFactor: 32,
levels: encoded_levels,
numLevels: 4
});
Run Code Online (Sandbox Code Playgroud)
我该怎么做?
假设你有一个Javascript对象,如{'cat':'meow','dog':'woof'...}是否有一种更简洁的方法从对象中选择一个随机属性,而不是我想出的这种漫长的方式:
function pickRandomProperty(obj) {
var prop, len = 0, randomPos, pos = 0;
for (prop in obj) {
if (obj.hasOwnProperty(prop)) {
len += 1;
}
}
randomPos = Math.floor(Math.random() * len);
for (prop in obj) {
if (obj.hasOwnProperty(prop)) {
if (pos === randomPos) {
return prop;
}
pos += 1;
}
}
}
Run Code Online (Sandbox Code Playgroud) 使用Chart.js 1.x我可以创建一个饼图并自动分配颜色:
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/1.1.1/Chart.js"></script>
<body>
<canvas id="myChart" width="400" height="400"></canvas>
<script>
var ctx = document.getElementById("myChart").getContext("2d");
var data = [{"label":"Conservative","value":"5"},{"label":"Democratic","value":"6"}];
var myChart = new Chart(ctx).Pie(data);
</script>
</body>
Run Code Online (Sandbox Code Playgroud)
如果我对v 2.x做同样的事情
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.3.0/Chart.bundle.js"></script>
<body>
<canvas id="myChart" width="400" height="400"></canvas>
<script>
var ctx = document.getElementById("myChart").getContext("2d");{"label":"Democratic","value":"6"}];
var myChart = new Chart(ctx, {
type: 'pie',
data: {
labels: ["Conservative", "Democratic"],
datasets: [{
data: [5, 15],
}]
}
});
</script>
</body>
Run Code Online (Sandbox Code Playgroud)
除非我手动指定颜色,否则整个饼图以灰色显示; 我错过了什么吗?我发现的唯一相关问题是这一个:Chart.js中的随机填充颜色,但是,如上所述,它完全适用于1.x所以我觉得它不再适用了.