JSPM

  • Created
  • Published
  • Downloads 1633641
  • Score
    100M100P100Q200287F
  • License BSD-3-Clause

D3 4.0 implementation of the Sankey plugin

Package Exports

  • d3-sankey

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-sankey) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

d3-sankey

D3 4.0 implementation of the Sankey plugin to visualize the flow between nodes in a directed acyclic network.

Installing

If you use NPM, npm install d3-sankey. Otherwise, download the latest release.

Demo

Here is Mike Bostock's famous example recreated with d3-sankey.

The dependencies are listed in the package.json file, so all you need to do to recreate the example is clone or download the block, run npm install and then smush your JS together with d3smush.

API Reference

# sankey()

Constructs a new sankey generator with the default settings.

# sankey.nodeWidth([width])

If width is specified, sets the node width to the specified function or number and returns this sankey generator. If width is not specified, returns the current node width accessor, which defaults to:

function nodeWidth() {
  return 24;
}

# sankey.nodePadding([padding])

If padding is specified, sets the node padding to the specified function or number and returns this sankey generator. If padding is not specified, returns the current node padding accessor, which defaults to:

function nodePadding() {
  return 8;
}

Here padding refers to the vertical space between nodes that occupy the same horizontal space.

# sankey.nodes([nodes])

If nodes is specified, sets the list of nodes to the specified function or array and returns this sankey generator. If nodes is not specified, returns the current accessor to the list of nodes, which defaults to:

function nodes() {
  return [];
}

# sankey.links([links])

If links is specified, sets the list of links to the specified function or array and returns this sankey generator. If links is not specified, returns the current accessor to the list of links, which defaults to:

function links() {
  return [];
}

# sankey.layout([iterations])

Returns the current accessor to the SVG layout object. Here iterations is the number of times the converging function computeNodeDepths is run.

# sankey.relayout()

Similar to layout but only recalculates the depth of links. Primarily used when a node is moved vertically.