You can do all of these using D3, albeit it takes a while. It's a really neat demonstration but it's a little hard to understand / interact with to be completely honest.
If you're using the ipython notebook workflow, I would check out bokeh or seaborn for publishing web-ready graphics / interactions. Vispy has some promise although its super early.
i was introduced to bokeh in a recent data science conference and it looked pretty cool, esp the interactivity and the way you can drill down into the granularity of the plot changing the scales.