Could you just update the data before each rendering? Assuming the data has changed, I'm not sure I see the advantage of doing it otherwise, since I think that all vis will have to be rendered again.
function getData(offset) {
}
var offset = 0;
var vis = new pv.Panel()
.width(w)
.height(h);
vis.add(pv.Layout.Stack)
.layers(function() getData(offset))
.offset("wiggle")
.x(x.by(pv.index))
.y(y)
.layer.add(pv.Area);
setInterval(function() {
offset++;
vis.render();
}, 20);
, , , - .