you could just use componentDidMount for the d3 rendering trigger, since the rendering should be done on the React part, at this moment. But that's just hypothetical since I did not test it. or you could use https://github.com/esbullington/react-d3 as an example and read the code to understand it.
I guess in the end since both are seperated renderers you just need to control the update live cycle so d3 does not render on every state or props change that has nothing to do with d3.