Eso se hace con canvas.
Para aprender, un buen enlace es este:
https://developer.mozilla.org/en/Canvas_tutorial
Otro:
http://www.htmlya.com.ar/html5/
En cuanto a librerías, sabiendo que se trata de canvas, ya podés buscar para encontrar la que más te guste.
También podrías hacerlo con svg. Si te interesa esta opción, creo que la mejor librería es esta:
http://raphaeljs.com/