Первая проблема: loadBarGraph должен быть обратным вызовом после выполнения setState .
Элементы, добавленные к выбору "enter", больше не добавляются автоматически восновной (обновленный) выбор.Теперь вам нужно явно создать выборку слияния , вызвав метод слияния для выбора "ввод":
const rect = this.svg.selectAll('rect').data(dataset);
rect.exit().remove();
rect.enter()
.append('rect')
.merge(rect)
.attr('width', 25)
.attr('height', (d, i) => {
console.log(d);
return 3 * d;
})
.attr('x', (d, i) => i * 30)
.attr('y', (d, i) => h - d)
.attr('fill', 'green');
Новый код Pen: https://codepen.io/imsontosh/pen/yRBXKg?editors=0010