折れ線グラフ上の点に円を付けるためのこのコードがあります。
svg.selectAll("dot")
.data(newdata)
.enter()
.append("circle")
.attr("class", "dot")
.attr("r", 4)
.attr("cx", function(d) { return x(newdate(d.key)); })
.attr("cy", function(d) { return y(d.values.mean); })
.attr("fill", "#8cc13f")
.on("mouseover", function(d) {
div.transition()
.duration(200)
.style("opacity", .9);
div.html("Date taken:" + " " + newdate(d.key) + "<br/>" + "<br/>" +
"Average Reading:" + " " + d.values.mean + "<br/>" + "<br/>" +
"Parameter:" + " " + selectedParameter)
.style("left", (d3.event.pageX) + "px")
.style("top", (d3.event.pageY - 28) + "px");
})
.on("mouseout", function(d) {
div.transition()
.duration(500)
.style("opacity", 0);
});
..そして、以下を使用してグラフを更新するときに、これらの円を遷移させようとしています。
var circle = svg.selectAll("dot")
.data(newdata);
circle
.enter()
.append("circle")
.data(newdata)
.transition()
.duration(750)
.attr("cx", function(d) { return x(newdate(d.key)); })
.attr("cy", function(d) { return y(d.values.mean); })
.attr("r", 4)
.attr("fill", "#8cc13f");
circle
.exit()
.transition()
.duration(750)
.attr('opacity',0)
.remove();
新しいサークルが追加されている間、結合は機能していますが、何らかの理由で古いサークルは削除されていませんか?誰か助けてもらえますか?