Обновление данных D3 не работает должным образом

Код «компилируется» на Microsoft Intermediate Language, который похож на формат сборки.

Когда вы дважды щелкните исполняемый файл, Windows загружает mscoree.dll, который затем устанавливает среду CLR и запускает код вашей программы. Компилятор JIT начинает считывать код MSIL в вашей программе и динамически компилирует код в инструкции x86, которые процессор может выполнить.

0
задан David Westwood 18 March 2019 в 16:38
поделиться

1 ответ

Без остатка вашего кода, чтобы убедиться, что это работает. Вы должны использовать .merge () . Для v3 метод отличается, это для v4 +.

let rects = svg.selectAll('rect')
    .data(data)

//On update Only
rects.attr('fill', 'black')

//On enter ...
rects.enter()
    .append('rect')
    .style('fill', 'maroon')
    .merge(rects)
    .attr('x', (d, i)=>i*(barWidth+padding))
    .attr('y', d=>height - bar_height(d.value))
    .attr('width', barWidth)
    .attr('height', d=> bar_height(d['value']))

Это объединит вновь добавленные rects с выбором существующих rects и обновит все из них всем, что следует после оператора merge.

0
ответ дан pmkro 18 March 2019 в 16:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: