d3.js est pas mal du tout, à voir si ça répond à ton besoin