IDEA 21: Automatic (Smart) Node and Edge Label Layout

Cytoscape currently has a large number of layout algorithms that place nodes according to various criteria. However, a common problem with all of these layout algorithms is that node and edge labels are not accounted for in the aesthetic criteria of the algorithm. This means that labels frequently end up in awkward locations which are hard to read, overlap or obscure other labels, and otherwise don’t look quite right. As a consequence, users are frequently forced to adjust the position of labels s, which is a time consuming and tedious process. To fix this, we propose developing a layout algorithm for labels. Perhaps this algorithm could be integrated with a normal layout algorithm, or perhaps it could be a subsequent step that lays the labels out in an intelligent fashion once the nodes have been placed.

My job this summer is to produce a label layout plugin which will eliminate the problem of overlapping/clustered labels.


In order to progress my way into the actual project, my mentors and I have decided on 2 minor subprojects that will allow me to familiarize myself with the Cytoscape program and source code.

Subproject 1:

  • Program a simple program that will arrange the nodes of a graph into a grid layout (to practice laying out nodes using x and y coordinates and the existing methods found in the Cytoscape source code).

Subproject 2:

  • Program a simple program that will arrange the label of a single nodes in certain ways





Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: