D3力布局更改显示与滑块的链接

时间:2015-10-05 08:55:28

标签: javascript d3.js force-layout

我对此d3力布局有疑问:

http://plnkr.co/edit/UJqNumlkl9rt8WGGOKYm?p=preview

我试图只显示其值等于滑块值的链接。但是它只在加载数据时有效,当我滑动滑块时它什么都不做,我不明白为什么。这是用于更改链接宽度的代码

var link = svg.selectAll(".link")
    .data(graph.links)
    .enter().append("line")
    .attr("class", "link")
    .style("stroke-width", function(d) {
        return d.value == slider.value() ? 3 : 0;
    });

有人能帮助我吗?

1 个答案:

答案 0 :(得分:2)

所以你要做的就是在滑块值改变时更新链接。

slider.on('slide', function(e,v) {
  updateLinks();
});

function updateLinks(){
  svg.selectAll(".link")
   .style("stroke-width", function(d) { 
     return d.value==slider.value() ? 3:0; 
  });
} 

Here是解决方案的傻瓜