I'm trying to find a way to get my graphs to cluster based on node attributes.
I've tried many of the layouts , with ForceAtlas/ForceAtlas2 being the most useful for my use case, but my clusters overlap based on the layouts.
I'm looking for feedback on a couple ideas, and whatever bright idea you might have for solving the same problem.
When I generate the graph data, I know the cluster based on my data source. I've included this as an attribute for my nodes. But how to get a layout to "consider" when two nodes are in the same cluster, and position them more together, and more separate from nodes not of that cluster?
1. At the time of graph creation, when an edge is created, check whether the two nodes are in the same cluster, and if so then add some quantity to the edge weight.
a. How do the gephi layouts use edge weight for rendering? What would be a good value to increment by?
b. Is there a way in gephi to turn off the "edge arrow size" scaling? It muddies the graph for my use case in a big way; today I change all the weights to 1 to mitigate this issue.
2. At the time of graph creation, when an edge is created, if a node is a member of cluster A, create a dummy "anchor" node (if it doesn't already exist) and connect this node to the dummy anchor node.
a. Is it possible to mark certain edges / nodes as "not visible" so that Gephi doesn't show them in the graph?
b. Same question here as with #1 - what weight value is "good" to influence the layouts?
Thanks for your time.