Draw network graphs using WebGL and Canvas backup.
You can import grapher in a script tag, or build grapher into your application using Duo:
var Grapher = require('ayasdi/grapher');
Need a specific feature? Create your own modules for Grapher! Here are some modules we've made:
- center: Helpful functions for centering the graph.
- palette: Set up custom palettes and set colors by palette indices.
- target: Target a node or link, or find the nearest nodes and links.
- zoom: Zoom adjusts Grapher's scale by ratio. Optionally target a point as the zoom center.
Here are a few examples:
These examples can be also found in the examples folder.
Installing
Grapher uses Node.js. Install Node.js then run the following command:
npm install
This will install the development dependencies that Grapher uses to run its various tasks.
Building
To build Grapher, run make:
make
This will bundle modules/grapher.js with its dependencies and outputs the result to grapher.js and grapher-min.js in the build folder. This will also generate documentation files in the doc folder. If you want to avoid creating docs, run this instead:
make grapher.js
This will only build grapher.js and grapher-min.js.
Testing
Unit tests are run using Jasmine with this command:
make test
This will also make grapher.js. Test specs can be found in the spec folder.
Documentation
Documentation is generated from the make command when building.
make
If you need to generate docs into the gh-pages branch, you can use:
make gh-pages
This will create a new branch off gh-pages named gh-pages-$(commit) which will contain the build and docs generated from the current HEAD. Please make sure to commit or stash any changes before running this command.
Grapher.js may be freely distributed under the Apache 2.0 license.