bacon-theory
network / graph theory library for node and the browser
Last updated 6 years ago by mikemonteith .
Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install bacon-theory 
SYNC missed versions from official npm registry.

Bacon Theory

A graph theory library for node and the browser.

What is graph theory? Wikipedia

var bt = require('bacon-theory');

var graph = bt.Graph();
graph.createNodes(10);
node1 = graph.getNode(1);
node2 = graph.getNode(2);
node3 = graph.getNode(3);

graph.addEdge(node1, node2);

node1.isNeighbour(node2); //true
node1.isNeighbour(node3); //false

Installation

$ npm install -g bacon-theory

API

var bt = require('bacon-theory');

For full documentation, see the source or build the documentation grunt jsdoc

Graph

var graph = new bt.Graph();

Node

var graph = bt.Graph();
var node = bt.Node();
graph.addNode(node);

graph.nNodes(); // = 1

Edge

var graph = bt.Graph(); //create a graph
graph.addNode(); //add a node
graph.addNode(); //add another node
graph.getNode(0).addEdge(graph.getNode(1)); //connect node #0 and node #1 with an edge

autocreate

Pass in an array of arrays which represents a collection of nodes. Integers as array values specify edges connecting to the n-th node (zero-indexed)

options.directed specifies if the edges are directional (true) or bi-directed (false, default)

//creates a graph where the 0th node is connected to node #1, 1st node connected to node #2 and #3 etc...

var options = {
	directed: false
};
var graph = bt.autocreate([
	[1],
	[2,3],
	[0],
	[0]
], options);

TODO

  • Provide helpers for calculating common graph properties
  • Allow non-integer edge weights
  • Export graph to JSON format
  • Add in-browser tests
  • More documentation and examples

Current Tags

  • 0.2.0                                ...           latest (6 years ago)

2 Versions

  • 0.2.0                                ...           6 years ago
  • 0.1.0                                ...           7 years ago
Maintainers (1)
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dependencies (2)
Dev Dependencies (7)
Dependents (0)
None

Copyright 2014 - 2017 © taobao.org |