有没有办法用 dc.js 为热图制作键或图例?

Is there a way to make a key or legend for a heat map with dc.js?

我用dc.js制作了一个热图,我想知道dc.js中是否有热图的键或图例函数。我在互联网上搜索过,但似乎找不到内置的方法,所以有没有其他人解决过这个问题?

我遇到了同样的任务,我做了第二张热图,它是从最小值到最大值的一行。

var range = maxValue - minValue;

var heatArr = [];
for (var i = 0; i < 24; i++) {
  heatArr.push({
    val: minValue + i / 23 * rangeValue,
    index: i
  });
}

var ndx = crossfilter(heatArr);

var keyHeatmap = ndx.dimension(function(d) {
  return [d.index, 1];
});

var keyHeatmapGroup = keyHeatmap.group().reduceSum(function(d) {
  return d.val;
});

var heatmapChart = dc.heatMap("#heatmapKey");

var heatColorMapping = function(d) {
  return d3.scale.linear().domain([minValue, maxValue]).range(["blue", "red"])(d);
};

heatColorMapping.domain = function() {
  return [minValue, maxValue];
};

heatmapChart.width(400)
        .height(80)
        .dimension(keyHeatmap)
        .group(keyHeatmapGroup)
        .colorAccessor(function(d) {
          return d.value;
        })
        .keyAccessor(function(d) { return d.key[0]; })
        .valueAccessor(function(d) { return d.key[1]; })
        .colsLabel(function(d){
          return heatArr[d].val.toFixed(0);
        })
        .rowsLabel(function(d) {
          return "Key";
        })
        .transitionDuration(0)
        .colors(heatColorMapping1)
        .calculateColorDomain();

heatmapChart.xBorderRadius(0);
heatmapChart.yBorderRadius(0);

minValue 和 maxValue 是在我原来的热图中找到的。我的最终结果如下所示: