VivaGraphJS
VivaGraphJS copied to clipboard
Label adjustment
Relatively complex graphs have the issue of labels overlapping and making certain areas unreadable.

A labelAdjust() function would be useful, like in Gephi. I guess the way to implement it is get the SVG text x, y, width, height and for each node check if its label overlaps, if true, adjust the node's position.
Agreed, that should be part of the library. I'm thinking this could be handled on a quad tree level, but it would require a major rewrite. Currently quad tree treats each node as a geometrical point (without size)
BTW is it posible to discard nodes overlaping?
@mpashkovskiy unfortunately - no. Not with current force directed algorithm. I know ForceAtlas2 supports that, but it's not part of the library.
@anvaka thanks Andrei will try sigma.js