【发布时间】:2024-04-21 17:05:02
【问题描述】:
在我的jsfiddle 中,如果您单击图例中的Pending 按钮,它应该会删除与该类别关联的条。这可行,但是当我单击Reset Legend 按钮(它为currateData 方法提供原始数据,以便Pending 条返回)时,它会将旧的待处理数据加载到不合适的位置。
我相信和这个方法有关:
function redrawPlot() {
svg = d3.select('svg.chart')
.attr('width', width)
.attr('height', height);
svg.selectAll('g.xaxis')
.attr('transform', 'translate(0, ' + (height - margin.top - margin.bottom) + ')');
}
我无法删除此方法,因为我的代码比 jsfiddle 中显示的更复杂,这只是显示问题。我还需要在redraw方法中更新宽度和高度,所以不能随便去掉。
如何更改 redrawPlot() 方法,以便在重新填充图表时,在添加旧数据时不会弄乱条形位置?
【问题讨论】:
标签: javascript d3.js bar-chart