https://github.com/doowb/ngraph.frombinary
Deserialize an ngraph.graph from binary format.
https://github.com/doowb/ngraph.frombinary
Last synced: 8 months ago
JSON representation
Deserialize an ngraph.graph from binary format.
- Host: GitHub
- URL: https://github.com/doowb/ngraph.frombinary
- Owner: doowb
- License: mit
- Created: 2016-11-05T04:16:57.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2016-11-05T04:19:24.000Z (about 9 years ago)
- Last Synced: 2025-05-09T02:14:13.287Z (8 months ago)
- Language: JavaScript
- Size: 11.7 KB
- Stars: 6
- Watchers: 2
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Contributing: contributing.md
- License: LICENSE
Awesome Lists containing this project
README
# ngraph.frombinary [](https://www.npmjs.com/package/ngraph.frombinary) [](https://npmjs.org/package/ngraph.frombinary) [](https://travis-ci.org/doowb/ngraph.frombinary)
> Deserialize an ngraph.graph from binary format.
## Install
Install with [npm](https://www.npmjs.com/):
```sh
$ npm install --save ngraph.frombinary
```
## Usage
```js
var load = require('ngraph.frombinary');
```
## API
### [load](index.js#L30)
Load a ngraph.graph that was previously saved using [ngraph.tobinary](https://github.com/anvaka/ngraph.tobinary). This expects that the `meta.json` file created with [ngraph.tobinary](https://github.com/anvaka/ngraph.tobinary) is in the folder. See the [parse](#parse) method below when labels and links are already in memory.
**Example**
```js
var graph = load(new Graph({uniqueLinkIds: false}), {cwd: '.'});
console.log(graph.getNodesCount());
//=> 4
console.log(graph.getLinksCount());
//=> 3
```
**Params**
* `graph` **{Object}**: [ngraph.graph](https://github.com/anvaka/ngraph.graph) instance to load the binary files into.
* `options` **{Object}**: Options to determine where the graph is loaded from.
* `options.cwd` **{String}**: Directory where the files are located. Defaults to `.`.
* `options.labels` **{String}**: Name of the labels file. Defaults to `labels.json`.
* `options.links` **{String}**: Name of the links file. Defaults to `meta.json`.
* `options.meta` **{String}**: Name of the meta file. Defaults to `links.bin`.
* `returns` **{Object}**: graph instance that was passed in after loading the binary files.
### [parse](lib/parse.js#L26)
Parse function that can be used directly to parse a `links` buffer and populate a [ngraph.graph](https://github.com/anvaka/ngraph.graph) graph with nodes and links. This is useful when the labels (node names) array and the links buffer have already been loaded into memory.
**Example**
```js
var labels = ['a', 'b', 'c', 'd'];
var links = fs.readFileSync('links.bin');
// links contains a binary buffer that looks like: `-1 2 3 -4 2`
var graph = load.parse(new Graph({uniqueLinkIds: false}), labels, links);
console.log(graph.getNodesCount());
//=> 4
console.log(graph.getLinksCount());
//=> 3
```
**Params**
* `graph` **{Object}**: [ngraph.graph](https://github.com/anvaka/ngraph.graph) instance to load nodes and links onto.
* `labels` **{Array}**: Array of labels used to lookup node names for the graph.
* `links` **{Buffer}**: Binary buffer represented links to deserialize onto the graph.
* `returns` **{Object}**: graph instance populated with nodes and links.
## About
### Related projects
* [ngraph.graph](https://www.npmjs.com/package/ngraph.graph): Base graph structure in ngraph.* | [homepage](https://github.com/anvaka/ngraph.graph#readme "Base graph structure in ngraph.*")
* [ngraph.tobinary](https://www.npmjs.com/package/ngraph.tobinary): Serialize ngraph.graph to binary format | [homepage](https://github.com/anvaka/ngraph.tobinary "Serialize ngraph.graph to binary format")
### Contributing
Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new).
Please read the [contributing guide](contributing.md) for avice on opening issues, pull requests, and coding standards.
### Building docs
_(This document was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme) (a [verb](https://github.com/verbose/verb) generator), please don't edit the readme directly. Any changes to the readme must be made in [.verb.md](.verb.md).)_
To generate the readme and API documentation with [verb](https://github.com/verbose/verb):
```sh
$ npm install -g verb verb-generate-readme && verb
```
### Running tests
Install dev dependencies:
```sh
$ npm install -d && npm test
```
### Author
**Brian Woodward**
* [github/doowb](https://github.com/doowb)
* [twitter/doowb](http://twitter.com/doowb)
### License
Copyright © 2016, [Brian Woodward](https://github.com/doowb).
Released under the [MIT license](LICENSE).
***
_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.2.0, on November 05, 2016._