1

私の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に表示されているものよりも複雑であるため、このメソッドを削除できません。これは問題を示しているだけです。また、再描画メソッドで幅と高さを更新する必要があるため、単に削除することはできません。

redrawPlot() メソッドを変更して、チャートを再作成するときに、古いデータを追加したときにバーの位置が台無しにならないようにするにはどうすればよいですか?

4

1 に答える 1