Reputation: 15491
I am working on a D3 bar chart as per the mock-up below:
How do I make the bars to have random colors?
Code:
svg.append("g")
.attr("class", "x axis")
.attr("transform", "translate(0," + height + ")")
.call(xAxis);
Upvotes: 17
Views: 20169
Reputation: 328
this is old now, but this is a pretty good approach if you need N number of random colors
http://bl.ocks.org/jdarling/06019d16cb5fd6795edf
Upvotes: 5
Reputation: 1726
colors = d3.scale.category20()
rects = svg.selectAll('rect')
.data(data)
.enter()
.append("rect")
.attr("class","rect")
.....#other attributes
.attr("fill",function(d,i){return colors(i)})
Upvotes: 7
Reputation: 3658
d3 has 4 built in color palettes.
Here's the link
for the built in color palettes.
This
tutorial is good on using specific colors for specific element.
Another tutorial
by Jerome Cukier.
And the official site
for d3 colors.
Fiddle
- Note: In the fiddle I've passed the colors by adding colors in the data.
It can even be done by passing the colors from a different variables.
Hope this helps.
Upvotes: 20