Płynne przejście między układami drzewa, klastra, drzewa promieniowego i promieniowego klastra

W przypadku projektu muszę interaktywnie zmienić hierarchiczny układ danych wizualizacji - bez jakiejkolwiek zmiany danych bazowych. Układy, które mogą przełączać się między sobą, powinny być drzewem, gromadą, drzewem promieniowym i gromadą promieniową. A przejście powinno być najlepiej animacją.

Myślałem, że będzie to stosunkowo łatwe zadanieD3. Zacząłem, ale zgubiłem się w tłumaczeniach i obrotach, powiązaniach danych i podobnych, więc proszę o pomoc. Ponadto prawdopodobnie robię coś nie w duchu D3, co jest złe, ponieważ szukam czystego rozwiązania.

Złożyłem ajsfidle, ale to tylko punkt wyjścia, z dodanymi przyciskami radiowymi, wygodnym małym zestawem danych i początkowym układem klastra - tylko po to, aby pomóc każdemu, kto chce się temu przyjrzeć. Z góry dziękuję!

AKTUALIZACJA:

Chciałem skupić się tylko na linkach, więc tymczasowo wyłączyłem inne elementy. W oparciu o metodę @AmeliaBR uzyskuje się następujące animacje:

Tutaj jestzaktualizowany jsfiddle.

AKTUALIZACJA 2:

Teraz z kręgami: (wybacz mój wybór kolorów)

{doom-duba-doom}

Tutaj jestjeszcze jeden zaktualizowany jsfiddle.

questionAnswers(2)

yourAnswerToTheQuestion