I took a different approach. d3 ease are based on Penner’s equation, which provides an equation to calculate p as a function of t.
p=f(t), it has 4 paramaeters. For linear easing it is, p= c*(t/d)+b where c = total change in postion, t = elapsed time in percentage, d=total duration (1), b = beginning position.
From this equation, I solved for t.
For easeInQuad/d3.easeQuadIn, the equation is