基于csv数据的表未正确更新d3js v4

时间:2018-02-18 17:14:10

标签: javascript d3.js

This表中,我过滤了re.findall(r'[\w\.-]+@[\w\.-]+', contents)函数中的数据,该函数使用过滤函数提供的新数组更新表。

将过滤后的数组传递给filter函数似乎没有任何问题,所以我猜测我在{{1}中做错了什么我无法弄清楚它有什么问题

我已查看了other个答案,并尝试按照这种方式进行,但它们都基于d3js v3,因此我认为逻辑与v4不兼容。

1 个答案:

答案 0 :(得分:2)

您的代码只需要进行两处小改动:

1)在 rows.exit().remove()方法之前移动enter

var rows = tbody.selectAll('tr')
  .data(dataNew, d => d.name);

rows.exit().remove(); // <== !!!

rows = rows
  .enter()
  .append('tr')
  .merge(rows);

2)在合并之后附加tdRow 的文字:

tdRow = tdRow
  .enter()
  .append('td')
  .merge(tdRow)
  .text(d => d.value) // <== !!!

检查updated plnkr