You may want to try out perspective. It seems to be able to do what you want, I’ve been looking to try it myself.
https://perspective.finos.org/
Editable example
https://bl.ocks.org/texodus/45b868833c9f456bd39a51e606412c5d
https://perspective.finos.org/
Editable example
https://bl.ocks.org/texodus/45b868833c9f456bd39a51e606412c5d