← Revision 1 as of 2010-01-25 21:55:57
Size: 2382
Comment:
|
← Revision 2 as of 2010-01-25 22:52:30 →
Size: 2415
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 29: | Line 29: |
=== Sample Visualizations === |
RFC : Nested Networks |
Editor(s): Mike Smoot |
Date: Jan 25, 2010 |
Status: pending review |
Proposal
Add two methods to the CyNode object allowing nodes to hold a reference to another network.
Background
The Network Panel provides a simple hierarchical list of networks created in Cytoscape. A hierarchy, however, is not sufficient to capture all of the relationships found between networks. Generalizing a hierarchy, it becomes clear that the relationships between networks form networks themselves. The nested network capability allows networks to be represented in Cytoscape as nodes and therefore included in networks themselves. This structure allows us to capture any relationship between networks that can be described by a network.
This approach is closely related to the concept of a hypernode.
Use Cases
Several module (subnetwork) search algorithms return modules that are themselves related (e.g. Bandyopadhyay 2008). With the nested network structure it is possible to create an overview network that displays the modules found and the relationships between the modules in a simple visualization.
Implementation Plan
- Add a setNestedNetwork and getNestedNetwork method to the giny.model.Node interface and provide implementations throughout our stack.
Add a showNestedNetwork and setNestedNetworkVisible method to giny.view.NodeView and provide a nested network visualization that can be controlled using the VizMapper.
- Add node context menu options that allow users to set, jump to, and delete nested networks.
- Add an icon to the Editor allowing users set nested networks via drag-n-drop.
- Define a nested network file format (NNF) and provide a Reader for the format.
Sample Visualizations
Project Management
Project Timeline
Finished December 16, 2009.
Project Dependencies
- While this RFC will touch many parts of the core code, it will not create any dependencies. No external (plugin or otherwise) code should be impacted by these changes.
Issues