hm-cytoscape-all-paths
v0.1.2
Published
Get all possible paths
Maintainers
Readme
cytoscape-all-paths
Description
This is an api extension for collection, you can use it to get all possible paths pointed by the arrows (demo)
Dependencies
- Cytoscape.js ^3.2.0
Usage instructions
Download the library:
- via npm:
npm install cytoscape-all-paths, - via direct download in the repository (probably from a tag).
Import the library as appropriate for your project:
ES import:
import cytoscape from 'cytoscape';
import cytoscapeAllPaths from 'cytoscape-all-paths';
cytoscape.use( cytoscapeAllPaths );CommonJS require:
let cytoscape = require('cytoscape');
let cytoscapeAllPaths = require('cytoscape-all-paths');
cytoscape.use( cytoscapeAllPaths ); // register extensionAMD:
require(['cytoscape', 'cytoscape-all-paths'], function( cytoscape, cytoscapeAllPaths ){
cytoscapeAllPaths( cytoscape ); // register extension
});Plain HTML/JS has the extension registered for you automatically, because no require() is needed.
API
cy.elements().cytoscapeAllPaths(options)
Return all paths, data format is: [ [ node, edge, node, edge, ... ], ... ]
options
- maxPaths: limit the maximum number of paths. default is -1, means unlimited
- rootIds: manually specify the root(s). if it is empty, will automatically calculate
- directed: boolean. default: false
- target: string. default: null
cy.elements().cytoscapeAllPathsTo(target, settings)
- target: string. The target node ID
- settings: object. The existing settings object with keys rootIds and maxPaths
cytoscapeAllPathsTo is an alias of cytoscapeAllPaths({directed: true, target: "YOUR_TARGET", ...})
Build targets
npm run test: Run Mocha tests in./testnpm run build: Build./src/**intocytoscape-all-paths.jsnpm run watch: Automatically build on changes with live reloading (N.b. you must already have an HTTP server running)npm run dev: Automatically build on changes with live reloading with webpack dev servernpm run lint: Run eslint on the source
N.b. all builds use babel, so modern ES features can be used in the src.
Publishing instructions
This project is set up to automatically be published to npm and bower. To publish:
- Build the extension :
npm run build:release - Commit the build :
git commit -am "Build for release" - Bump the version number and tag:
npm version major|minor|patch - Push to origin:
git push && git push --tags - Publish to npm:
npm publish . - Make a new release for Zenodo.
