Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

neosig

Package Overview
Dependencies
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

neosig

An integration of `Sigma.js` with `Neo4j`, with some customs renderers to make parallele curves

  • 1.2.2
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

NeoSig

An integration of Sigma.js with Neo4j, with some customs renderers to make parallele curves

How to use it

  • Import the script
<script type="text/javascript" src="https://rawgit.com/sim51/neosig/master/docs/neosig.bundle-1.2.1.js"></script>
  • Import neo4j-driver
<script src="https://cdn.jsdelivr.net/npm/neo4j-driver"></script>
  • OPTINAL: Import fontawesome if you need to display some icons
<script src="https://use.fontawesome.com/bd149a0111.js"></script>
  • Create an object configuration for Neo4j
var neo4j = {
    url: 'bolt://localhost',
    user: 'neo4j',
    password: 'admin',
    driver: {} // this is the neo4j driver configuration if neede (you can omit it
};
  • Create a graph style object :
var style = {
    labels: {
      Person : {
          // field to display (if ommit, node's id will be displayed)
          label: 'name',
          color: '#654321',
          size: 10,
          icon: {
              // the fontawesome unicode
              name: 'f007',
              color: '#FFF',
              scale: 1.0
          }
      },
      Movie : {
          label: 'title',
          color: '#123456',
          size: 10,
          icon: {
            name: 'f008',
            color: '#FFF',
            scale: 1.0
          }
      }
    },
    edges: {
        ACTED_IN: {
            color: '#040404',
            size:2
        },
        DIRECTED: {
            color: '#040404',
            size:2
        }
    }
};
  • Call the Neo4jGraph function to get the result of your query as a graph structure compatible with Sigma. This function takes 4 attributs :

** The Neo4j configuration object ** The graph style object ** A cypher query ** Parameters of the cypher query

Neo4jGraph(neo4j, style, 'MATCH (n)-[r]->(m) RETURN n,r,m LIMIT 20').then( function(result) {

      var sig = new sigma({
          graph: result,
          renderer: {
            container: 'graph-container'
          },
          settings: {
            edgeLabelThreshold:1,
            drawEdgeLabels:true,
            edgeLabelSize:'fixed',
            defaultEdgeLabelSize:8,
            enableEdgeHovering: true,
            edgeHoverExtremities: true
          }
      });

      // enable drag'n'drop
      sigma.plugins.dragNodes(sig, sig.renderers[0]);

      // start layout
      sig.startForceAtlas2();
      setTimeout(() => { sig.stopForceAtlas2() }, Math.log(result.nodes.length*result.edges.length)*1000);

});

== Example

If you have a running Neo4j with the movie dataset on your local computer, and if the neo4j user password is admin, you can test it here : https://sim51.github.io/neosig/

Keywords

FAQs

Package last updated on 03 May 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc