I am having trouble updating my timeline after I switch time interval by zooming in or out. The old data points remain on my chart (timeline). I have tried adding .remove() after .filter() but it didn't work. Would appreciate any kind advice. Thanks.
function update() {
// re-position individual elements
svg.selectAll('.element')
//.remove()
.filter(function(d) {
if (interval == 'hours') {
return d.Interval == 'hour';
}
else if (interval == 'days') {
return d.Interval == 'day';
}
else if (interval == 'weeks') {
return d.Interval == 'week';
}
else if (interval == 'months') {
return d.Interval == 'month';
}
})
.attr('transform', function (d) {
//return 'translate(' + xScale(d.date) + ', ' + yScale(d.Ranking) + ')';
if (interval == 'hours') {
return 'translate(' + xHoursScale(d.date) + ', ' + yScale(d.Ranking) + ')';
}
if (interval == 'days') {
return 'translate(' + xDaysScale(d.date) + ', ' + yScale(d.Ranking) + ')';
}
if (interval == 'weeks') {
return 'translate(' + xWeeksScale(d.date) + ', ' + yScale(d.Ranking) + ')';
}
if (interval == 'months') {
return 'translate(' + xMonthsScale(d.date) + ', ' + yScale(d.Ranking) + ')';
}
});