javascript - How to update d3 table? -
i have problem update d3.js table when mousemoving. here simplified example in jsfiddle.
here main code:
 function mousemove() {    var newdata = [{variable: "x", value: 1}, {variable: "y", value: 1}]    table.selectall("tbody.tr")     .data(newdata)     .enter()     .append("tr")     .selectall("td")     .data(function(row) {       return columns.map(function(column) {         return {column: column, value: row[column]};       });     })     .enter()     .append("td")     .text(function(d) { return d.value; }); }; namely, how can update values in table instead of drawing new table again , again?
thank you!
use defined selections(in jsfiddle example)
var table = d3.select("body").append("table"); var tbody = table.append("tbody"); using selection, can update existing table. in mouseover() function, have used enter() attempt update table. since enter() sees required number of placeholders (2 placeholders 2 rows) present, not anything. can update removing enter() , append statements , doing like:
tbody.selectall("tr")   .data(newdata)   .selectall("td")   .data(function(row) {     return columns.map(function(column) {       return {         column: column,         value: row[column]       };     });   })   .text(function(d) {return d.value;}); ideally should follow enter(), update() , exit() sequence such d3 updates, situation above changes suffice.
Comments
Post a Comment