title: D3.js zoom translateTo issue
body: <p>I have an issue restoring transform parameters and applying it to D3 view. When I apply previously saved transform parameters to view. Everything looks nice. But as soon as you try to drag or zoom view the view jumps.</p>
  
  <p>Here what I mean:</p>
  
  <p><a href="https://blockchaingraph.org/#ipfs-Qmdv3dEd5YUsiLv8GJ4ZEKYcBwPU6vKosqCXRWvR7LmcuE" rel="nofollow noreferrer">https://blockchaingraph.org/#ipfs-Qmdv3dEd5YUsiLv8GJ4ZEKYcBwPU6vKosqCXRWvR7LmcuE</a></p>
  
  <p>After graph loads, try to drag the view and you will see it jumps.</p>
  
  <p>Here's my code:</p>
  
  <pre><code>svg = container.append('svg')
              .attr('width', '100%')
              .attr('height', '100%')
              .attr('class', 'graphd3-graph')
              .call(d3.zoom().on('zoom', function () {
                  var scale = d3.event.transform.k;
                  var translate = [d3.event.transform.x, d3.event.transform.y];
                  svg.attr('transform', 'translate(' + translate[0] + ', ' + translate[1] + ') scale(' + scale + ')');
              }))
              .on('dblclick.zoom', null)
              .append('g')
              .attr('width', '100%')
              .attr('height', '100%');
  </code></pre>
  
  <p>.....</p>
  
  <pre><code>var c = container.select(".graphd3-graph");
          svg.attr('transform', data.transform);
          d3.zoom().scaleTo(c, tra.k);
          d3.zoom().translateTo(c, tra.x, tra.y);
  </code></pre>
  
  <p>The question is how to properly apply transform on draggable/zoomable D3 view?
  d3.zoom().scaleTo() seems to be working, but d3.zoom().translateTo() completely ignored.</p>
  
  <p>I'm using d3/5.7.0/d3.min.js</p>