У меня есть treemap, который я собрал вместе с d3.js. Я заполняю данные через getJSON. Он отлично работает. Однако у меня есть эта функция в методе setInterval, и она, похоже, не освежает себя.d3.js обновление визуального
var treemap = d3.layout.treemap()
.padding(4)
.size([w, h])
.value(function(d) { return d.size; });
var svg = d3.select("#chart").append("svg")
.style("position", "relative")
.style("width", w + "px")
.style("height", h + "px");
function redraw3(json) {
var cell = svg.data([json]).selectAll("g")
.data(treemap)
.enter().append("g")
.attr("class", "cell")
.attr("transform", function(d) { return "translate(" + d.x + "," + d.y + ")"; });
cell.append("rect")
.attr("width", function(d) { return d.dx; })
.attr("height", function(d) { return d.dy; })
.style("fill", function(d) { return d.children ? color(d.data.name) : null; });
cell.append("text")
.attr("x", function(d) { return d.dx/2; })
.attr("y", function(d) { return d.dy/2; })
.attr("dy", ".35em")
.attr("text-anchor", "middle")
.text(function(d) { return d.children ? null : d.data.name; });
}
setInterval(function() {
d3.json("http://localhost:8080/dev_tests/d3/examples/data/flare2.json", function(json) {
redraw3(json);
});
}, 3000);
Мой вопрос конкретно, почему, когда я изменить данные в файле JSon не отображает его через 3 секунды в TreeMap?
Заранее спасибо.
Помимо чрезвычайно полезного и щедрого сообщения Шона, это видео тоже помогло мне. Я надеюсь, что это может быть полезно и для кого-то другого: http://www.drewconway.com/zia/?p=2857 – Chris