Hace un tiempo que estoy desarrollando con la librería d3js y realmente tiene muchísimas funcionalidades para desarrollar componentes gráficos. Orientada al charting (gráficos) ésta librería permite hacer muchos gráficos complejos de una manera bastante sencilla.

En éste caso desarrollé un componente gráfico basado en ésta librería que dibuja burbujas, con el centro de gravedad en el centro del gráfico. Basándome en varios ejemplos similares, arme un componente simple de configurar. El proyecto se encuentra alojado en https://github.com/lflores/gravity-bubbles y pueden ver un ejemplo funcionando aquí