我正在使用 dygraphs.js 来渲染一些图。在一个图中使用多个系列,这些系列将获得不同的颜色,这些颜色都非常适合在一起(因此 dygraphs 有一个很棒的调色板)。但是,如果我使用多个图,则每个图都具有相同的颜色(只有一个系列)。
我想对每个绘图使用 dygraphs 调色板,以便颜色与自动颜色相同 - 有没有办法访问 dygraphs 调色板,最好使用整数索引,因为我不知道预先会有多少个地 block ?
例如对于 4 个图,我想使用 dygraph 中的前 4 个颜色,前 10 个颜色为 10 个……就像在具有多个系列的一个图中一样。
最佳答案
定义标准调色板的代码是 here 。要点如下:
var colors = [];
var half = Math.ceil(numSeries / 2);
for (var i = 0; i < numSeries; i++) {
// alternate colors for high contrast.
var idx = i % 2 ? (half + (i + 1)/ 2) : Math.ceil((i + 1) / 2);
var hue = (1.0 * idx / (1 + numSeries));
colorStr = Dygraph.hsvToRGB(hue, sat, val);
colors.push(colorStr);
}
最好的办法是创建一组颜色,并使用 colors
选项为每个绘图设置不同的颜色。
关于javascript - 多个图自动使用不同的颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30526472/