Displaying Values Associated With Each Color Gradient Mapped From Range In D3 Legend
I'm trying to draw a heatmap using D3. So far I was able to draw one by modifying the code from http://bl.ocks.org/tjdecke/5558084. At the moment, my legend is only showing two col
Solution 1:
The problem is the data
used for the legends:
var legend = svg.selectAll(".legend")
.data(colorScale.domain());
Right now, your data
is an array containing only 2 values, 0
and 1
, because of this snippet:
var colorScale = d3.scale.linear()
.domain([0,1])
What happened in the original code? In the original code, the author created an array with several values, using the quantiles()
function:
var legend = svg.selectAll(".legend")
.data([0].concat(colorScale.quantiles()), function(d) { return d; });
Answer :
You have several different solutions here, the easier and uglier one being simply hardcoding your data. So, if you want a legend with 6 rectangles:
var dataLegend = [0, 0.2, 0.4, 0.6, 0.8, 1];
var legend = svg.selectAll(".legend")
.data(dataLegend);
Post a Comment for "Displaying Values Associated With Each Color Gradient Mapped From Range In D3 Legend"