d3.js hands down. You absolutely can update in d3 stuff in real time, all you do is create a transition and re-bind the updated data. I've previously built the front end to a trading system that streams events to the browser and updates a d3 visualization over a websocket, and once you get your head around how d3 does things it's the perfect tool for this kind of thing.
Here's a tutorial that looks quite good: http://blog.visual.ly/creating-animations-and-transitions-wi...