tomnelson / jungrapht-visualization

visualization and sample code from Java Universal Network Graph ported to use JGraphT models and algorithms
Other
47 stars 7 forks source link

Releases frequency #9

Closed SemyonSinchenko closed 4 years ago

SemyonSinchenko commented 4 years ago

Hello! Can you explain please how frequent are releases? When'll be the next one with ForceAtlas2?

Thank You!

tomnelson commented 4 years ago

I hope to have a release within a couple of weeks. Are you happy with the ForceAtlas2 implementation? I noticed that for the large graph visualization (ShowLayoutsWithJGraphtIO) with the initial graph, that compared to Fruchterman Reingold, it seems to push the vertices to the extreme boundaries. Perhaps there is a setting for the layout algorithm that would improve it for that graph.

SemyonSinchenko commented 4 years ago

Good news! Thank you! There is trade-off between gravity force and repulsion in FA2. For my graph it works good but currently I need to use the local-jar dependency that is not so comfortable and I'm waiting for release.

In the last time I had some problem with ShowLayoutsWithJGraphtIO: it thrown exceptions that it cannot find the graph file and something else... I'll try to fix it and tune default parameters of FA2 in the next few days. I'll make a PR with it if I get the success.

SemyonSinchenko commented 4 years ago

Hi again!

I've problems with VisualizationViewer because my Graph is big (10,000 vertices and 190,000 edges) and VV get me the "slide-show" on the screen. But I can test different layouts in my case in another way. There are visualization with FA2 and FR (with default parameters):

My graph is really dense and it is a big problem for the FR-algorithm. But FA2 solve it and it is the reason to use it for me. FA2 is significantly more flexible and has more parameters. But the back side of flexibility is that it can work worse with default parameters and must be tuned for each Graph. One remark: I used the RepulsionK equal 0.1. Maybe You can change the default value in source code to something small (0.1-1.0) instead the current value 100.0? Maybe it can solve the problem when all vertices are placed on the border of image. I don't want to make a PR with changes in only one row.

Thank You again for the nice library!

tomnelson commented 4 years ago

I created a specific demo for ForceAtlas2: ForceAtlas2WithJGraphtIO. It is in the master branch and in the snapshot jars. You can modify many parameters and see their effect. I also removed ForceAtlas2 from the layout algorithm selections in several other demos. As you indicated, ForceAtlas2 works best when you adjust parameters for the specific graph size. Please try the demo and let me know if you see anything that should be added to it.

SemyonSinchenko commented 4 years ago

Thank You! Unfortunately I couldn't found the general set of parameters for the FA2 that are applicable for different graph types. This algorithm must be tuned for each one by hands.

tomnelson commented 4 years ago

I just released 1.0_RC7. Sorry it took so long.