Skip to main content


Project description

This is a really thin shiv that lets you run static d3js scripts to produce SVG / HTML outputs in your Jupyter notebooks. Underneath the covers, it uses d3-node.

Why is this?

Because it makes writing my dissertation easier. I have some dynamic visualizations that are d3-based. But, for the write-up, I also have static snapshots as illustrations. This is my DRY hack. It let’s me reuse the code in a way that isn’t terribly intrusive. (Well, that, and I don’t like out-of-Jupyter-core JS in my notebooks.)


Assuming you have node and yarn,

pip install d3nb


The following snippet runs the given cell source with my_node_project_dir as the working directory, then outputs the SVG. If that directory doesn’t exist, you can run the initial cell magic line as, %%d3nb_svg my_node_project_dir --init to set it up.

%%d3nb_svg my_node_project_dir
var D3Node = require('d3-node')
var d3 = require('d3')
var d3n = new D3Node()
var svg = d3n.createSVG()

// See:
// ...


Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for d3nb, version 0.0.2
Filename, size & hash File type Python version Upload date
d3nb-0.0.2.tar.gz (4.2 kB) View hashes Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page