【问题标题】:d3> How can I append only new circles without recycling previous circles?d3> 如何只附加新圈子而不回收以前的圈子?
【发布时间】:2016-11-10 03:25:00
【问题描述】:

当我做这个功能时

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

然后用不同的数据重复几次。

我发现有些圈子应该有不同的 id 却有相同的 id。 我认为原因是d3的回收圈只有不同的位置。 我需要显示每次调用函数时附加的所有圆圈,并带有不同的 ID。

我怎样才能停止回收并将新圈子附加到一个 svg 中?

“selectAll('circle')”有什么选项吗?

【问题讨论】:

    标签: d3.js svg geometry


    【解决方案1】:

    不确定您的问题到底是什么,但请尝试提供一个关键功能。

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

    如果您提供具有不同 id 的数据,则不应再“回收”圈子。

    【讨论】:

    • 谢谢。每当重复该功能时,我通过更新数据(累积以前的数据和新数据)并删除所有以前的圆圈(然后选择所有圆圈)的方式来解决。不管怎样,你是个好人~
    猜你喜欢
    • 1970-01-01
    • 2020-04-06
    • 1970-01-01
    • 2020-04-15
    • 2012-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多