我正在使用位于D3之上的dc.js。问题是我的所有图表都有相同的颜色条:
为不同颜色设置域并不容易,因为我的图表都不是静态的,x / y轴上的值可能总是不同。我怎么能告诉图表动态改变每组的颜色?上面的示例代码如下:
var chart = dc.barChart(elm);
chart.barPadding(0.1)
chart.outerPadding(0.05)
chart.brushOn(false)
chart.x(d3.scale.ordinal());
chart.xUnits(dc.units.ordinal);
chart.elasticY(true);
chart.width(250).height(250)
chart.render();
我尝试过添加类似的内容:
chart.range(colorbrewer.RdBu[9]);
但是所有的图表也会变成相同的颜色。
谢谢!
答案 0 :(得分:3)
我相信你想要的东西:
chart.colors(d3.scale.category20b());
为每个条指定颜色。如果您希望所选颜色基于条形数据的值:
chart.colorAccessor(function(d, i){return i;})
这些方法及其他内容记录在此处:https://github.com/dc-js/dc.js/blob/master/web/docs/api-latest.md#color-mixin