node package manager


Creating interactive circular migration plots for the web using D3.

Circular Migration Plot

Creating interactive circular migration plots for the web using D3, like and

Install globally with npm:

npm install circular-migration-plot -g

You may want to filter countries with small migration flows:

cmp-filter data/countries.csv data/flows.csv

Build the matrix json processible by the library out of the csv input file.

cmp-compile file [OPTIONS]

  • --regions, -r: Sort order for regions
  • --pretty, -p: Pretty print result JSON
cmp-compile flows.csv
cmp-compile -
cat flows.csv | cmp-compile
cmp-compile flows.csv --regions North,West
cmp-compile flows.csv --regions North,West --pretty
  <script src="dist/circular-migration-plot.js"></script> 
  <div id=timeline></div>
  <div id=chart></div>
      data: 'json/sample.json',
      chart: '#chart',
      timeline: '#timeline'

See index.html.

head -n30 data/flows.csv | cmp-filter data/countries.csv | cmp-compile > migration-flows.json

To run the unit tests:

npm test

For JShint:

npm run jshint

The JavaScript is build using Browserify and then compressed with UglifyJS:

npm run build

Packagued files land in dist folder.

A development server can be run with

npm start

Copyright (c) 2014 null2 GmbH Berlin
This work as well as the sample data is licensed under a Creative Commons Attribution-NonCommercial 3.0 Unported License.