私はこのjsfiddleで作業しています。ボタンをクリックするWeekView
と、凡例にあるのと同じ色を反映するようにバーの色が変わるはずです。でもなぜか色が違います。
思わない
var layer = svg.selectAll(".layer")
.data(stack);
layer.enter()
.append("g")
.attr("class", "layer")
.style("fill", function (d, i) {
return color(i);
});
layer.exit()
.remove();
ウィークビューに切り替えると呼び出されるため、古いバーを新しいバーに置き換えるのではなく、以前のビューのバーを再利用するだけです。
d3.js でバーを適切な色に置き換えるにはどうすればよいですか?