mathgraph

0.0.3 • Public • Published

GraphJS

nodejs npm install mathgraph

browser

<script src="path/to/underscore.js"></script>
<script src="path/to/graph.js"></script>

Create a new directed graph from a list

var graph = new GraphJS([
    { id: 1, data: 'a', link: 2 },
    { id: 2, data: 'b', link: [1, { id: 3, weight: 5 }] },
    { id: 3, data: 'c', link: 1 }
]);

Methods

get

returns reference to node with the given id.

var node = graph.get(1);

depthFirstSearch

returns reference to first node satisfying the callback

var node = graph.depthFirstSearch(function (node) {
    return node.data === 'a';
});

getStronglyConnectedComponents

See Tarjan's algorithm for strongly connected components.

var components = graph.getStronglyConnectedComponents();

hasCycles

Tells you wether the graph has any cycles

var doesGraphHaveCycles = graph.hasCycles();

isForest

var isGraphAForest = graph.isForest();

isConnected

Are all vertices connected to each other in some way.

var isGraphConnected = graph.isConnected();

isTree

Is graph a connected forest.

var isGraphATree = graph.isTree();

Package Sidebar

Install

npm i mathgraph

Weekly Downloads

1

Version

0.0.3

License

MIT

Last publish

Collaborators

  • dubfriend