I tried to write the netjsongraph layout with SigmaJS, plus the previous Echarts library, which has four effects:
Below I list some of the differences between the two libraries:
- Echarts:
- Advantage: Easy to get started. Support multi-function widget extension (Node element classification, different theme, like day-night mode in
mesh viewer)
- Disadvantage:
1.It is not easy to customize the extension, and there may be some difficulties in encapsulating the deeper and later optimization (need to modify the source code).
2.The parameters of the force algorithm is less, some of which have to remove.
3. The node Label is always displayed. Big data may be messy.
- Sigma:
- Advantage: Some optimizations can be made easily When big data are rendered. Built-in features such as canvas scaling and panning, etc., and provide a number of
plugins for different functions.
- Disadvantage:
1. Features require a lot of plugins, less tutorials, difficult to get started.
2. There are some problems in the handling of the drag event, such as the dragging of the edge and the node will not maintain the final position after dragging. The force layout must be stopped when dragging.
3. Under WebGL accelerated rendering, some features are not supported, such as edge's mouse events.