D3 is awesome for data-driven interactive graphics The only drawbacks are:
- The really big one (difficult workaround below): D3 (actually, anything SVG) doesn't work at all in any version of Internet Explorer earlier than version 9 (the very latest one), so depending on the demographics of your audience, around 15%-50% of people may see nothing at all
But, if a designer was to learn anything programming related, learning Raphael is a good investment (though probably not the best place to start for a beginner). As well as generating visualisations, you can design SVG vector graphics in Illustrator or Inkscape, pipe them into Raphael, and then you can do all sorts of things with them online without worrying much about browser compatibility.
*SVG in the browser is slightly different to HTML5 Canvas: put very simply, it's better for making vector shapes that are interactive, but they are more memory intensive. In general, SVG is better for graphics like that NYT facebook chart, worse for graphics like those linked to here