3675
Comment:
|
5249
|
Deletions are marked like this. | Additions are marked like this. |
Line 7: | Line 7: |
* Cleaning up backlogs (from 2.5) | * Cleaning up backlogs (from 2.5) |
Line 13: | Line 12: |
Line 15: | Line 13: |
* '''Support for MIMs and/or SBGN.''' To correctly render Molecular interaction maps or Systems Biology Graphical Notation would require the development of several new node shapes and other graphical capabilities. * '''Support for layered graphics.''' The goal is to allow users to add images or other graphical objects to the background and foreground of networks to further enhance network visualizations. * '''Dynamic Filters.''' The intent for the changes to the filters UI is to allow dynamic selection of nodes and edges based sliders and other widgets in the filter. This isn't possible for 2.5 so we've pushed it to 2.6. * '''["Consolidated graph analysis plugin"] - ''' Several graph analysis algorithms (e.g. shortest-path and graph statistics) are available as plugins, but they are not collected in a common location. We can borrow some code from [http://jung.sourceforge.net/ JUNG] project for this part. See ["Future_Cytoscape_Features/Simple_graph_statistics"] page. * '''Cytoscape Themes.''' We think it would be useful to provide customized versions of Cytoscape for specific users. An example would be a biologist themed release that would include all plugins to support import/export of biological file formats. * '''Spreadsheet capability for attribute browser.''' The ability to manipulate attributes within Cytoscape would provide users flexibility that Cytoscape currently doesn't have. * '''["Scripting"]''' - Both general scripting language support and Cytoscape original simple scripting language. * '''Attribute namespaces.''' Extend attributes to include the concept of a "namespace". This could be used to bind node attributes to specific networks, to specific groups, or to simply provide some assurance of uniqueness for plugin authors by binding an attribute to a plugin. * '''Properties''' We need global properties that are saved in the .cytoscape directory automatically, in addition to the cytoscape.props. Some use cases are: saving the last directory used, saving bookmarks stored by users. |
* '''Support for ["Molecular Interaction Maps"] and/or SBGN.''' Lead: Allan [''Agilent, MSKCC, NCI?''] - To correctly render Molecular interaction maps or Systems Biology Graphical Notation would require the development of several new node shapes and other graphical capabilities. We will want to incorporate this support incrementally over two or more versions of Cytoscape. Some possible features (in order of difficulty, only a subset to be implemented): * links on Nodes for ''Processes'', i.e. double-click on a ''Process ''Node and jump to a new Network View. * editor, renderer, and graph layout support for 90-degree geometry, e.g. snap-to-grid. * Coordinate System (like a legend except that it accommodates pans/zooms/viewport changes). * support for adding graphical annotations on an annotation plane (see layered graphics below). * editor, renderer, and graph layout support for new edge types, new node shapes. * add, drag/drop structured evidence onto a Node or Edge * editor 'templates' for composites * sub-molecular entities, e.g. binding sites, domains, splice variants. Introduce the construct of a 'site' on a node. * '''Support for layered graphics.''' Lead: Ben [''MSKCC, Agilent, Gladstone?''] - The goal is to allow users to add images or other graphical objects to the background and foreground of networks to further enhance network visualizations. * '''Cytoscape Themes.''' Leads: Sarah and Alex - We think it would be useful to provide customized versions of Cytoscape for specific users. An example would be a biologist themed release that would include all plugins to support import/export of biological file formats. * '''Dynamic Filters.''' Lead: Peng - The intent for the changes to the filters UI is to allow dynamic selection of nodes and edges based sliders and other widgets in the filter. This isn't possible for 2.5 so we've pushed it to 2.6. * '''["Consolidated graph analysis plugin"]''' Lead: Kei - Several graph analysis algorithms (e.g. shortest-path and graph statistics) are available as plugins, but they are not collected in a common location. We can borrow some code from [http://jung.sourceforge.net/ JUNG] project for this part. See ["Future Cytoscape Features/Simple graph statistics"] page. * '''Spreadsheet capability for attribute browser.''' Lead: ??? - The ability to manipulate attributes within Cytoscape would provide users flexibility that Cytoscape currently doesn't have. * '''["Scripting"]''' Lead: Kei and Scooter - Both general scripting language support and Cytoscape original simple scripting language. * '''Attribute namespaces.''' Lead: Mike - Extend attributes to include the concept of a "namespace". This could be used to bind node attributes to specific networks, to specific groups, or to simply provide some assurance of uniqueness for plugin authors by binding an attribute to a plugin. * '''Properties''' Lead: ??? - We need global properties that are saved in the .cytoscape directory automatically, in addition to the cytoscape.props. Some use cases are: saving the last directory used, saving bookmarks stored by users. * '''Biomart Interface''' Lead: Kei - Provide a simple interface to Biomart that will facilitate id mapping in Cytoscape. This will address use cases 3 and 4 listed [http://baderlab.org/IdentifierMapping here]. * '''Modal Label Positioning''' Lead: Mike - Provide an edit mode to Cytoscape that allows node labels to be moved simply by clicking on them and dragging. |
Line 26: | Line 33: |
* '''Refactor Graphics Export''' Freehep is OK, but there are many bugs and few options. We should write our own graphics export that allows users to set the resolution desired for bitmaped images (gif,png,jpg) and also properly support PDF, PS, and SVG (including transparency). * '''Refactor the Network Manager to support selection and operations on multiple networks.''' It is often the case that users have hundreds of networks loaded at any given time. It would be useful to be able to perform operations (such as applying a layout) on more than one network at once. Also, we need to separate Network Panel's tree data model from GUI. * '''Refactor event handling, GINY, and others.''' As always, there is much refactoring to be done. Cleaning up event handling is particularly important because the current disorder is causing problems for plugin writers. * '''Undirected Edges''' Add proper support for undirected edges. * '''In memory session saving''' Explore writing a session file without first writing tmp files. We ''should'' be able to do everything in memory. This will prevent many permission error bugs. * Better headless mode (communicating to scripting feature?) |
* '''Refactor the Network Manager to support selection and operations on multiple networks.''' Lead Mike and Kei - It is often the case that users have hundreds of networks loaded at any given time. It would be useful to be able to perform operations (such as applying a layout) on more than one network at once. Also, we need to separate Network Panel's tree data model from GUI. * '''Undirected Edges''' Lead: Mike - Add proper support for undirected edges. * '''In memory session saving''' Lead: Mike - Explore writing a session file without first writing tmp files. We ''should'' be able to do everything in memory. This will prevent many permission error bugs. |
Line 34: | Line 38: |
* Linkout from Attribute Browser * Cytoscape Class Cleanup * !CyAttributes Name Clashes |
* '''Linkout from Attribute Browser''' Lead: ??? - Get Linkout and Linkout from Attribute Browser using the same code. Make sure that linkout works for any attribute, not just ID. * '''Cytoscape Class Cleanup''' Lead: ??? - Ongoing. * '''!CyAttributes Name Clashes''' Lead: ??? - Related to attribute namespaces? * '''Clean up old bugs''' Lead: Everyone - Ongoing. == Move to 3.0 == * '''Headless mode/Layering.''' See the [:CodeLayering:Layering RFC] and the [:HeadlessModeRFC:Headless Mode RFC]. * '''Refactor event handling, GINY, and others.''' As always, there is much refactoring to be done. Cleaning up event handling is particularly important because the current disorder is causing problems for plugin writers. |
Release 2.6 Use Cases / Overall Themes
(Under construction)
- Relatively smaller set of new features.
- Cleaning up backlogs (from 2.5)
Timeline
Release Date: TBD
Release 2.6 Feature Ideas (VERY tentative)
New Features
Support for ["Molecular Interaction Maps"] and/or SBGN. Lead: Allan [Agilent, MSKCC, NCI?] - To correctly render Molecular interaction maps or Systems Biology Graphical Notation would require the development of several new node shapes and other graphical capabilities. We will want to incorporate this support incrementally over two or more versions of Cytoscape. Some possible features (in order of difficulty, only a subset to be implemented):
links on Nodes for Processes, i.e. double-click on a Process Node and jump to a new Network View.
- editor, renderer, and graph layout support for 90-degree geometry, e.g. snap-to-grid.
- Coordinate System (like a legend except that it accommodates pans/zooms/viewport changes).
- support for adding graphical annotations on an annotation plane (see layered graphics below).
- editor, renderer, and graph layout support for new edge types, new node shapes.
- add, drag/drop structured evidence onto a Node or Edge
- editor 'templates' for composites
- sub-molecular entities, e.g. binding sites, domains, splice variants. Introduce the construct of a 'site' on a node.
Support for layered graphics. Lead: Ben [MSKCC, Agilent, Gladstone?] - The goal is to allow users to add images or other graphical objects to the background and foreground of networks to further enhance network visualizations.
Cytoscape Themes. Leads: Sarah and Alex - We think it would be useful to provide customized versions of Cytoscape for specific users. An example would be a biologist themed release that would include all plugins to support import/export of biological file formats.
Dynamic Filters. Lead: Peng - The intent for the changes to the filters UI is to allow dynamic selection of nodes and edges based sliders and other widgets in the filter. This isn't possible for 2.5 so we've pushed it to 2.6.
["Consolidated graph analysis plugin"] Lead: Kei - Several graph analysis algorithms (e.g. shortest-path and graph statistics) are available as plugins, but they are not collected in a common location. We can borrow some code from [http://jung.sourceforge.net/ JUNG] project for this part. See ["Future Cytoscape Features/Simple graph statistics"] page.
Spreadsheet capability for attribute browser. Lead: ??? - The ability to manipulate attributes within Cytoscape would provide users flexibility that Cytoscape currently doesn't have.
["Scripting"] Lead: Kei and Scooter - Both general scripting language support and Cytoscape original simple scripting language.
Attribute namespaces. Lead: Mike - Extend attributes to include the concept of a "namespace". This could be used to bind node attributes to specific networks, to specific groups, or to simply provide some assurance of uniqueness for plugin authors by binding an attribute to a plugin.
Properties Lead: ??? - We need global properties that are saved in the .cytoscape directory automatically, in addition to the cytoscape.props. Some use cases are: saving the last directory used, saving bookmarks stored by users.
Biomart Interface Lead: Kei - Provide a simple interface to Biomart that will facilitate id mapping in Cytoscape. This will address use cases 3 and 4 listed [http://baderlab.org/IdentifierMapping here].
Modal Label Positioning Lead: Mike - Provide an edit mode to Cytoscape that allows node labels to be moved simply by clicking on them and dragging.
Refactoring
Refactor the Network Manager to support selection and operations on multiple networks. Lead Mike and Kei - It is often the case that users have hundreds of networks loaded at any given time. It would be useful to be able to perform operations (such as applying a layout) on more than one network at once. Also, we need to separate Network Panel's tree data model from GUI.
Undirected Edges Lead: Mike - Add proper support for undirected edges.
In memory session saving Lead: Mike - Explore writing a session file without first writing tmp files. We should be able to do everything in memory. This will prevent many permission error bugs.
Backlogs from 2.5
Linkout from Attribute Browser Lead: ??? - Get Linkout and Linkout from Attribute Browser using the same code. Make sure that linkout works for any attribute, not just ID.
Cytoscape Class Cleanup Lead: ??? - Ongoing.
CyAttributes Name Clashes Lead: ??? - Related to attribute namespaces?
Clean up old bugs Lead: Everyone - Ongoing.
Move to 3.0
Headless mode/Layering. See the [:CodeLayering:Layering RFC] and the [:HeadlessModeRFC:Headless Mode RFC].
Refactor event handling, GINY, and others. As always, there is much refactoring to be done. Cleaning up event handling is particularly important because the current disorder is causing problems for plugin writers.