cytoscape-ngraph.forcelayout
- Cytoscape.js >=x.y.z
Download the library:
- via npm:
npm install cytoscape-ngraph.forcelayout
, - via bower:
bower install cytoscape-ngraph.forcelayout
, or - via direct download in the repository (probably from a tag).
require()
the library as appropriate for your project:
CommonJS:
var cytoscape = require('cytoscape');
var cyforcelayout = require('cytoscape-ngraph.forcelayout');
cyforcelayout( cytoscape ); // register extension
AMD:
require(['cytoscape', 'cytoscape-ngraph.forcelayout'], function( cytoscape, cyforcelayout ){
cyforcelayout( cytoscape ); // register extension
});
Plain HTML/JS has the extension registered for you automatically, because no require()
is needed.
Please briefly describe your API here:
cy.cyforcelayout({
async: {
// tell layout that we want to compute all at once:
maxIterations: 1000,
stepsPerCycle: 30,
// Run it till the end:
waitForStep: false
},
physics: {
/**
* Ideal length for links (springs in physical model).
*/
springLength: 100,
/**
* Hook's law coefficient. 1 - solid spring.
*/
springCoeff: 0.0008,
/**
* Coulomb's law coefficient. It's used to repel nodes thus should be negative
* if you make it positive nodes start attract each other :).
*/
gravity: -1.2,
/**
* Theta coefficient from Barnes Hut simulation. Ranged between (0, 1).
* The closer it's to 1 the more nodes algorithm will have to go through.
* Setting it to one makes Barnes Hut simulation no different from
* brute-force forces calculation (each node is considered).
*/
theta: 0.8,
/**
* Drag force coefficient. Used to slow down system, thus should be less than 1.
* The closer it is to 0 the less tight system will be.
*/
dragCoeff: 0.02,
/**
* Default time step (dt) for forces integration
*/
timeStep: 20,
iterations: 10000,
fit: true,
/**
* Maximum movement of the system which can be considered as stabilized
*/
stableThreshold: 0.000009
},
iterations: 10000,
refreshInterval: 16, // in ms
refreshIterations: 10, // iterations until thread sends an update
stableThreshold: 2,
animate: true,
fit: true
});
This project is set up to automatically be published to npm and bower. To publish:
- Set the version number environment variable:
export VERSION=1.2.3
- Publish:
gulp publish
- If publishing to bower for the first time, you'll need to run
bower register cytoscape-ngraph.forcelayout https://github.com/nickoasmv/cytoscape-ngraph.forcelayout.git