From IT Skills
Jump to: navigation, search in Paris


A JavaScript library to visualize and interact with graphs.

fork of Sigma.js Differences with Sigma official

Linkurious.js is a set of plugins built around an enhanced version of Sigmajs. This library is written in pure Javascript and directly modifies the DOM.

is NOT free!

DEPRECATED! More info at

Compatibility of Canvas, WebGL, SVG[edit]


Ogma is available in a proprietary license only.

With Ogma is it now possible to display more than 100 000 nodes and 100 000 edges. Ogma is compatible with more than 80 browsers and any devices... Ogma makes visualization of large graphs possible by leveraging the full performances of WebGL combined with a modular architecture. The visualization engine is built for WebGL first ; it supports HTML5 Canvas and SVG with the same level of details, though performance are dramatically limited by these rendering technologies... A key challenge in visualizing large dynamic graphs is to display as little information possible on screen to avoid getting overwhelmed by the amount of data. It supports module bundlers such as Webpack, it can be used with React, and provides TypeScript definitions for fast integration with Angular 2.


Load your data[edit]

  • Call the graph API to add nodes and edges to the visualization.
  • Import data from multiple file formats.
  • Connect to a Neo4j server using the Bolt protocol.
  • Or generate synthetic graphs using Wattz-Strogatz or Barabasi-Albert models.

Customize visual results[edit]

  • Apply graph layouts (force-directed, hierarchical, concentric, geospatial).
  • Provide built-in user interactions with the mouse, trackpad, or through the API to hover, to select, to drag, or to group nodes and edges.
  • Customize style of nodes and edges with both basic visual variables (color, size, shape, icon, image) and advanced visual components (badges, stroke, outline, halo, and pulse effects).
  • Customize style of texts of nodes and edges (font, color, position, style, size, background) with support for line wrapping and line breaks.

Help users analyze graph data[edit]

  • Create data-driven styles: map properties of nodes and edges to visual variables such as colors, sizes, and icons for easy and always up-to-date customization.
  • Filter nodes and edges, with the ability to create compound filters with AND/OR operators.
  • Group nodes and edges manually or with specific rules.
  • Find shortest paths.
  • Display a legend to communicate easily the meaning of the visual variables.
  • Display tooltips on user interaction to provide contextual information on nodes and edges, or to implement a context menu.

Export your results[edit]

  • Export customizable image files to SVG, PNG, JPG, TIFF which can integrate a custom watermark.
  • Export data in multiple file formats.

How to integrate with Angular.js[edit]

Never ever $watch for changes in sigmaInstance.graph. It kill performances because the graph object will be hashed each time the $digest cycle is triggered, which may be several times per second. Do not rely on StackOverflow to help you because you will find such shitty solutions. Track memory leaks and watchers using the angular-performance Chrome extension.