d3 plot with zoom and pan