Package Exports
- d3-node
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (d3-node) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
D3-Node
Server-side D3 with ease
Why?
- Performance: pre-rendering allows offloading data processing, and network overhead
- Node.js + npm: take advantage of the entire ecosystem
- Static rendering of SVGs
Usage:
var D3Node = require('d3-node');
var d3n = new D3Node(); // initializes D3 with container element
d3n.d3Element.append('span'); // insert span tag
d3n.html() // returns: <html><head></head><body><span></span></body></html>Setting container & insertion point via selector
var options = {selector: '#chart'}
options.container = '<div id="container"><div id="chart"></div></div>';
var d3n = new D3Node(options); // initializes D3 with container element
d3n.d3Element.append('span'); // insert span tag into #chart
d3n.html() // returns: <html><head></head><body><div id="container"><div id="chart"><span></span></div></div></body></html>
SVG creation
var d3n = new D3Node(); // initializes D3 with container element
d3n.createSVG().append('g'); // create SVG w/ 'g' tag
d3n.svgString() // returns: <svg xmlns="http://www.w3.org/2000/svg"><g></g></svg>Run Tests:
$ npm testSee examples
TODOs:
- Add more examples: (remote data, world map)
- Create Gulp task
- Add option to inject css/js into html output
