2016-11-10 4 views
0

Когда я делаю эту функцию

function d3add() 
{d3.select('svg').selectAll('circle').data(data).enter().append('circle') 
    .attr('id',function(d){return d.id;});}" 

, а затем сделать это повторяется несколько раз с различными данными.d3> Как добавить новые круги без повторного использования предыдущих кругов?

Я считаю, что некоторые круги имеют одинаковый идентификатор, когда у них должны быть разные идентификаторы. Я думаю, что причина в том, что круги рециркуляции d3 имеют только разные позиции. Мне нужно показать все круги, добавляемые при каждом вызове функции, с разными идентификаторами.

Как я могу остановить рециркуляцию и просто добавить новые круги в один svg?

Есть ли опция "selectAll ('circle')"?

ответ

0

Не знаете, в чем проблема, но попробуйте предоставить ключевую функцию.

.data(data,function(d){return d.id})

Если вы предоставляете данные с различными идентификаторами, вы не должны иметь больше «рециркуляции» круги.

+0

спасибо. Я решил путем обновления данных (накапливать предыдущие данные и новые данные) и удалять все предыдущие круги (а затем выбирать весь круг) всякий раз, когда повторяется функция. В любом случае, ты хороший парень ~ – Brad

 Смежные вопросы

  • Нет связанных вопросов^_^