Home Wiki Blog Forum GEXF.net

Gephi forums

Community support

Clustering based on node attributes

Once it's running

Clustering based on node attributes

Postby networkdecomp » 14 May 2013 17:38

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.
networkdecomp
 
Posts: 5
Joined: 17 Apr 2013 16:39

Re: Clustering based on node attributes

Postby networkdecomp » 22 May 2013 16:31

I tried using a dummy "anchor" node with edges to every node in the corresponding cluster. With a relatively large weight on these edges, clusters are much more clearly emphasized (significantly less overlap).

I've still been unable to find a way to turn off the "edge arrow size" scaling for weighted edges. I also haven't been able to find an option for making some nodes / edges be invisible (not displayed).
networkdecomp
 
Posts: 5
Joined: 17 Apr 2013 16:39

Re: Clustering based on node attributes

Postby algotr8der » 23 Dec 2013 20:14

Has anyone been able to do this? Whats the point of having attributes if there are no layout algorithms that make use of the data?

I actually misunderstood what the purpose of *grouping* was. I thought it was a *forced* way of clustering nodes together so I spent hours grouping nodes based on an attribute. But that apparently just *compresses* nodes together. So that leaves me back at square one.

I have a network that is a representation of electrical connections in a fictitious transmission grid. Each node represents a bus in the system and edges represent transmission lines. There are various attributes such as voltage, bus-area etc. I want to cluster based on *bus-area* as a first pass because there are 70,000 nodes/buses in my network and it is the only logical method of grouping nodes together for my application.

I'm not sure how to do that as none of the built in layouts produce anything useful. Actually the layouts are very bad.

I would be very appreciative for your help. Thank you.
algotr8der
 
Posts: 4
Joined: 23 Dec 2013 00:18

Re: Clustering based on node attributes

Postby algotr8der » 23 Dec 2013 20:23

It seems this is the same problem discussed in the following thread:

http://forum.gephi.org/viewtopic.php?t=1929

I'm quite surprised that there isn't a solution for this type of problem. Clustering based on data isn't a method in current scientific research? Strange.
algotr8der
 
Posts: 4
Joined: 23 Dec 2013 00:18


Return to How-To and Troubleshooting

Who is online

Users browsing this forum: Google [Bot] and 0 guests

sports medicine portsmouth nh where to buy metronidazole