我用折线图复制了THIS example,以通过焦点和上下文实现刷牙功能。现在我想定期将新数据插入到折线图中。我这样做:
// Push new value in dataset
values.push(newdataObject);
// Write new datapoints in graph
x.domain(d3.extent(values, function(d) { return parseDate(d.timestamp); }));
// Make transition
var t = svg.transition().duration(750);
t.select(".line").attr("d", main_line(values));
t.select(".x.axis").call(xAxis);
当我看到整个图形而不刷任何东西时,这是有效的。
问题:当我刷下底部图形的一部分并获得更新时,上部聚焦图形将再次填满所有数据,而底部图形仍然保持刷新状态。如何保持主图的焦点?
编辑:
我的刷牙功能:
function brushed() {
x.domain(brush.empty() ? x2.domain() : brush.extent());
focus.select(".line").attr("d", main_line);
focus.select(".x.axis").call(xAxis);
}