我有一个图表,我在其中显示了两组数据。用户可以点击按钮以翻转到另一组数据。问题是轴不一样,但是当我想要更新刻度时,我只是在另一个轴的顶部进行分层。
http://jsfiddle.net/scottieb/VjHd6/
关键位在最后:
vis.selectAll("axis").remove();
vis.append("svg:g")
.attr("class", "x axis")
.attr("transform", "translate(0, " + (h - margin ) + ")")
.call(d3.svg.axis()
.scale(x)
.tickSize(0)
.tickSubdivide(true)
.tickFormat(formatCurrency)
);
我尝试过selectAll(“g”)。remove(),但这会阻止放下下一个轴。有什么想法吗?
答案 0 :(得分:1)
哎呀,需要重新定义比例并调用转换,而不是仅仅构建一个全新的轴。
答案 1 :(得分:0)
您的问题是您的选择器不正确。您应该选择“。轴”,而不是选择“轴”,因为您要附加一个带有类的“g”节点。