Unlike D3, which is SVG based, this collection of components written by Diamenta are based on HTML 5 Canvas elements. Here is an extract from the IE10 blog that makes a nice comparison:
The following is a high-level summary of Canvas and SVG meant to frame a discussion of when to use one particular vector graphic technology over the other.
|A Comparison of Canvas and SVG|
|Pixel-based (canvas is essentially an image element with a drawing API)||Object Model-based (SVG elements are similar to HTML elements)|
|Single HTML element similar to <img> in behavior||Multiple graphical elements which become part of the Document Object Model (DOM)|
|Visual presentation created and modified programmatically through script||Visual presentation created with markup and modified by CSS or programmatically through script|
|Event model/user interaction is coarse—at the canvas element only; interactions must be manually programmed from mouse coordinates||Event model/user interaction is object-based at the level of primitive graphic elements—lines, rectangles, paths|
|API does not support accessibility; markup-based techniques must be used in addition to canvas||SVG markup and object model directly supports accessibility|
SVG is known as a retained mode graphics model persisting in an in-memory model. Analogous to HTML, SVG builds an object model of elements, attributes, and styles. When the <svg> element appears in an HTML5 document, it behaves like an inline block and is part of the HTML document tree.
Canvas is a bitmap with an immediate mode graphics application programming interface (API) for drawing on it. Canvas is a “fire and forget” model that renders its graphics directly to its bitmap and then subsequently has no sense of the shapes that were drawn; only the resulting bitmap stays around.
One way to think of these is that Canvas resembles the Windows GDI API, where you programmatically draw graphics to a window, and SVG resembles HTML markup with elements, styles, events, and DOM-based programmability. Canvas is procedural whereas SVG is declarative.