Size: 9590
Comment:
|
Size: 10261
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 15: | Line 15: |
=== Grouped Visualization 1 - Single Node === '''Solution:''' A group of nodes can be visualized by collapsing the selected group (child nodes) into a single parent node. The connections that exist between the child nodes and the surrounding nodes of the network will be represented in this view. All the edges connected to the child nodes will be connected to the single parent node. |
=== 1 - Group View === This tool will provide the ability to group together nodes and edges of a network and view them in a clear and organized manner. The group view can have multiple ways of representing the grouped nodes and fall into two categories described. Only one group view can be active at a time but the user will have the ability to change between different views at any time. |
Line 18: | Line 18: |
'''Characteristics:''' The group node will have the option of having specific characteristics that will help in representing the child nodes. | ==== 1a) Child Nodes Hidden ==== |
Line 20: | Line 20: |
. ''Average:'' The parent node can inherit a color that will be more helpful in representing the child nodes within. This can be done by using a color value that is an average of all the color values of the child nodes. Similarly, the parent node can inherit an average value for the node width and height. |
'''Solution:''' A group of nodes can be visualized by collapsing the selected group (child nodes) into a single parent node. The connections that exist between the child nodes and the surrounding nodes of the network will be represented in this view. All the edges connected to the child nodes will be connected to the single parent node. The group node will have the option of having specific characteristics that will help in representing the data attributes of the child nodes as visual attributes of the group node. ''Average:'' The parent node can inherit a color that will be more helpful in representing the child nodes within. This can be done by using a color value that is an average of all the color values of the child nodes. Similarly, the parent node can inherit an average value for the node width and height, or other types of node visual attributes. |
Line 22: | Line 25: |
. ''Pie Chart:'' The group characteristics can also be represented by a pie chart. The pie chart can show segments of the colors that the child nodes represent, the size of each segment will be representative of how often that color appears in the child nodes. An implementation of this idea exists and can be found at: http://genepro.ccb.sickkids.ca/screenshots.html attachment:Initial.jpg attachment:Pie.jpg . ''Tool Tip:'' The user can have the ability to view information within the node without expanding the group node. A tool tip window can appear when a cursor moves over the group node and a list of names of all the child nodes can appear in the window. Other important information can also appear in this window, such as a list (or a percentage figure if the number child nodes is large) of the type of nodes that exist in this group or other features such as color if necessary. attachment:ToolTip.jpg '''Use Cases:''' |
|
Line 28: | Line 26: |
. ''Use Case 1'' . "Clustering-Biomodules" - http://www.cytoscape.org/cgi-bin/moin.cgi/groupAPI/UseCase_1 ''Use Case 2'' . "Protein Complexes–Pico/GenMAPP" - http://www.cytoscape.org/cgi-bin/moin.cgi/groupAPI/UseCase_2A === Grouped Visualization 2 - Bounding Box === '''Solution:''' A group of nodes can be visualized by a bounding box. This box will have the ability to move around and as a result move the child nodes along with it. Surrounding nodes of the network can then be dragged and dropped into the bounding box and will behave as child nodes. |
''Pie Node:'' The group characteristics can also be represented by a pie node. The pie chart can show segments of the colors that the child nodes represent, the size of each segment will be representative of how often that color appears in the child nodes. An implementation of this idea exists and can be found at: http://genepro.ccb.sickkids.ca/screenshots.html attachment:Pie.jpg |
Line 35: | Line 29: |
'''Characteristics:''' All the child nodes will be clearly visible along with their characteristics as they were before the grouping. The characteristics of the bounding box can change to reflect different characteristics of the group nodes. |
''Grid Node:'' The group characteristics can also be represented by a grid node. The cells of the grid node can represent each colour that appears in the child nodes of the group. Other attributes other than colour can also be represented this way. attachment:Grid.jpg |
Line 37: | Line 32: |
. ''Box Shape:'' The shape of the bounding box can change to the shape that the grouped nodes make. This will allow easy grouping and visualization when there are many surrounding nodes in the network. Different types of groups can be represented by a shape of a different colour. attachment:BoxCustom.jpg . ''Different Box Shape:'' The bounding box can have different appearances that can represent different types of groups (from a biological standpoint). For example the bounding box may appear as a simple rectangular frame or a circle or a set of brackets and a legend can explain the associations. attachment:BoxShapes2.jpg . ''Width of Box:'' The width of the border of the bounding box can change with the number of nodes that are inside the group. attachment:BoxSize.jpg . ''Box Location:'' To avoid clutter and show a clear distinction between the grouped nodes and the rest of the network, the bounded group should be moved to a separate, empty part of the network panel. attachment:BeforeGrouped.jpg attachment:AfterGrouped.jpg An implementation of this idea named the '''“Bubble Router”''' can be found at: http://conklinwolf.ucsf.edu/genmappwiki/Bubble_Router_Plugin |
'''Use Cases:''' |
Line 47: | Line 34: |
'''Use Cases:''' ''Use Case 1'' "Named list of genes. Piet & GenMAPP" - [http://www.cytoscape.org/cgi-bin/moin.cgi/groupAPI/UseCase_7A] |
''Use Case 1'' "Clustering-Biomodules" - http://www.cytoscape.org/cgi-bin/moin.cgi/groupAPI/UseCase_1 |
Line 51: | Line 37: |
=== Expanded View Visualization 1 – Staked View === '''Solution:''' After expanding the grouped nodes, show the child nodes as vertically stacked. |
''Use Case 2'' "Protein Complexes–Pico/GenMAPP" - http://www.cytoscape.org/cgi-bin/moin.cgi/groupAPI/UseCase_2A |
Line 54: | Line 40: |
'''Characteristics:''' During stacked view, different sections of a single node can be viewed and each section of the node will have edges connected to it. Each section of the node will be presented by a block and each block will be stacked on top of each other to represent a single node. Each block can be differentiated with a name and a separate color. | ==== 1b. Child nodes visible ==== |
Line 56: | Line 42: |
'''Visual Aid:''' | '''Solution:''' A group of nodes can be visualized by a bounding box. This box will have the ability to move around and as a result move the child nodes along with it. Surrounding nodes of the network can then be dragged and dropped into the bounding box and will behave as child nodes. All the child nodes will be clearly visible along with their characteristics as they were before the grouping. The characteristics of the bounding box can change to reflect different characteristics of the group nodes. |
Line 58: | Line 44: |
=== Expanded View Visualization 2 – New Window === '''Solution:''' After expanding the grouped nodes, show the child nodes as a new network in a separate window. |
''Box Shape:'' The shape of the bounding box can change to the shape that the grouped nodes make. This will allow easy grouping and visualization when there are many surrounding nodes in the network. Different types of groups can be represented by a shape of a different colour. |
Line 61: | Line 46: |
'''Characteristics:''' A “+’ symbol will appear when the mouse is moved over a parent node and when clicked, a new network window pop-up that will show the child nodes as a new network. | attachment:BoxCustom.jpg |
Line 63: | Line 48: |
'''Visual Aid:''' | ''Different Box Shape:'' The bounding box can have different appearances that can represent different types of groups (from a biological standpoint). For example the bounding box may appear as a simple rectangular frame or a circle or a set of brackets, and a legend can explain the associations. |
Line 65: | Line 50: |
=== Expanded View Visualization 3 – Group Panel === '''Solution:''' For each grouped visualization described above, create a group panel in Cytoscape that will show a more detailed, hierarchical structure of the group. This panel will be very helpful when the groups become more complex with multiple levels of parent nodes. |
attachment:BoxShapes2.jpg |
Line 68: | Line 52: |
'''Characteristics:''' The parent node will be listed in the panel with all the child nodes and their characteristics branching from it. This view will be very similar to Windows Explorer that shows the file hierarchy. | ''Width of Box:'' The width of the border of the bounding box can change with the number of nodes that are inside the group. |
Line 70: | Line 54: |
'''Visual Aid''' | attachment:BoxSize.jpg |
Line 72: | Line 56: |
=== Expanded View Visualization 4 – Tree Map === '''Solution:''' A hierarchical node grouping can be flattened out and shown as a birds-eye, textual representation. |
''Box Location:'' To avoid clutter and show a clear distinction between the grouped nodes and the rest of the network, the bounded group should be moved to a separate, empty part of the network panel. |
Line 75: | Line 58: |
'''Characteristics:''' This view will work for groups that can be represented by trees, ie: multiple parent nodes can exists, but none of the parent nodes can share any child nodes. | attachment:BeforeGrouped.jpg attachment:AfterGrouped.jpg |
Line 77: | Line 60: |
'''Visual Aid:''' An example of this visualization taken from [http://ivtk.sourceforge.net/] | An implementation of this idea named the '''“Bubble Router”''' can be found at: http://conklinwolf.ucsf.edu/genmappwiki/Bubble_Router_Plugin |
Line 79: | Line 62: |
attachment:Treemap.jpg |
'''Use Cases:''' ''Use Case 1'' "Named list of genes. Piet & GenMAPP" - [http://www.cytoscape.org/cgi-bin/moin.cgi/groupAPI/UseCase_7A] |
Line 81: | Line 66: |
=== Expanded View Visualization 5 – Mouse-Over Tool === '''Solution:''' Create a viewing tool that will be controlled by a mouse and will travel over the network panel, when the tool moves over a parent node, the inside of the parent node. |
=== 2 - Group Window View === This is an optional, independent view of the group nodes that can be active during any of the above group views. |
Line 84: | Line 69: |
'''Characteristics:'''This tool will show an “x-ray”, detailed view of the inside of the parent node. | ''Stacked View'' |
Line 86: | Line 71: |
'''Visual Aid:''' An example of this type of tool can be seen here. However instead of a maximized view, the user will be able to see the child nodes that are inside the parent node. Image taken from [http://ivtk.sourceforge.net/] |
'''Solution:''' After expanding the grouped nodes, show the child nodes as vertically stacked. During stacked view, different sections of a single node can be viewed and each section of the node will have edges connected to it. Each section of the node will be presented by a block and each block will be stacked on top of each other to represent a single node. Each block can be differentiated with a name and a separate color. |
Line 88: | Line 74: |
attachment:Bubble.jpg |
'''Visual Aid:''' ''New Window'' '''Solution:''' After expanding the grouped nodes, show the child nodes as a new network in a separate window. A “+’ symbol will appear when the mouse is moved over a parent node and when clicked, a new network window pop-up that will show the child nodes as a new network. '''Visual Aid:''' ''Group Panel'' '''Solution:''' For each grouped visualization described above, create a group panel in Cytoscape that will show a more detailed, hierarchical structure of the group. This panel will be very helpful when the groups become more complex with multiple levels of parent nodes. The parent node will be listed in the panel with all the child nodes and their characteristics branching from it. This view will be very similar to Windows Explorer that shows the file hierarchy. '''Visual Aid''' ''Tree Map'' '''Solution:''' A hierarchical node grouping can be flattened out and shown as a birds-eye, textual representation. This view will work for groups that can be represented by trees, ie: multiple parent nodes can exists, but none of the parent nodes can share any child nodes. '''Visual Aid:''' An example of this visualization taken from [http://ivtk.sourceforge.net/] attachment:Treemap.jpg ''Mouse-Over Tool'' '''Solution:''' Create a viewing tool that will be controlled by a mouse and will travel over the network panel, when the tool moves over a parent node, the inside of the parent node.This tool will show an “x-ray”, detailed view of the inside of the parent node. '''Visual Aid:''' An example of this type of tool can be seen here. However instead of a zoomed view, the user will be able to see the child nodes that are inside the parent node. Image taken from [http://ivtk.sourceforge.net/] attachment:Bubble.jpg ''Tool Tip:'' '''Solution:''' The user can have the ability to view information within the node without expanding the group node. A tool tip window can appear when a cursor moves over the group node and a list of names of all the child nodes can appear in the window. Other important information can also appear in this window, such as a list (or a percentage figure if the number child nodes is large) of the type of nodes that exist in this group or other features such as color if necessary. attachment:ToolTip.jpg |
RFC Name : Group views |
Editor(s): Anna Rukosuyeva |
Status: Being written |
Proposal
The goal is to provide different ways of viewing a group of nodes of a network. We must provide a visualization that will present nodes with specific characteristics or similarities in a clear and organized manner without intrusion on the view of the rest of the network.
To accomplish this goal we will introduce use cases that will present a different type of group view that will provide an option for this feature.
Biological Questions / Use Cases
1 - Group View
This tool will provide the ability to group together nodes and edges of a network and view them in a clear and organized manner. The group view can have multiple ways of representing the grouped nodes and fall into two categories described. Only one group view can be active at a time but the user will have the ability to change between different views at any time.
1a) Child Nodes Hidden
Solution: A group of nodes can be visualized by collapsing the selected group (child nodes) into a single parent node. The connections that exist between the child nodes and the surrounding nodes of the network will be represented in this view. All the edges connected to the child nodes will be connected to the single parent node. The group node will have the option of having specific characteristics that will help in representing the data attributes of the child nodes as visual attributes of the group node.
Average: The parent node can inherit a color that will be more helpful in representing the child nodes within. This can be done by using a color value that is an average of all the color values of the child nodes. Similarly, the parent node can inherit an average value for the node width and height, or other types of node visual attributes.
attachment:AverageFinal.jpg
Pie Node: The group characteristics can also be represented by a pie node. The pie chart can show segments of the colors that the child nodes represent, the size of each segment will be representative of how often that color appears in the child nodes. An implementation of this idea exists and can be found at: http://genepro.ccb.sickkids.ca/screenshots.html
- attachment:Pie.jpg
Grid Node: The group characteristics can also be represented by a grid node. The cells of the grid node can represent each colour that appears in the child nodes of the group. Other attributes other than colour can also be represented this way.
- attachment:Grid.jpg
Use Cases:
Use Case 1 "Clustering-Biomodules" - http://www.cytoscape.org/cgi-bin/moin.cgi/groupAPI/UseCase_1
Use Case 2 "Protein Complexes–Pico/GenMAPP" - http://www.cytoscape.org/cgi-bin/moin.cgi/groupAPI/UseCase_2A
1b. Child nodes visible
Solution: A group of nodes can be visualized by a bounding box. This box will have the ability to move around and as a result move the child nodes along with it. Surrounding nodes of the network can then be dragged and dropped into the bounding box and will behave as child nodes. All the child nodes will be clearly visible along with their characteristics as they were before the grouping. The characteristics of the bounding box can change to reflect different characteristics of the group nodes.
Box Shape: The shape of the bounding box can change to the shape that the grouped nodes make. This will allow easy grouping and visualization when there are many surrounding nodes in the network. Different types of groups can be represented by a shape of a different colour.
attachment:BoxCustom.jpg
Different Box Shape: The bounding box can have different appearances that can represent different types of groups (from a biological standpoint). For example the bounding box may appear as a simple rectangular frame or a circle or a set of brackets, and a legend can explain the associations.
attachment:BoxShapes2.jpg
Width of Box: The width of the border of the bounding box can change with the number of nodes that are inside the group.
attachment:BoxSize.jpg
Box Location: To avoid clutter and show a clear distinction between the grouped nodes and the rest of the network, the bounded group should be moved to a separate, empty part of the network panel.
attachment:BeforeGrouped.jpg attachment:AfterGrouped.jpg
An implementation of this idea named the “Bubble Router” can be found at: http://conklinwolf.ucsf.edu/genmappwiki/Bubble_Router_Plugin
Use Cases:
Use Case 1 "Named list of genes. Piet & GenMAPP" - [http://www.cytoscape.org/cgi-bin/moin.cgi/groupAPI/UseCase_7A]
2 - Group Window View
This is an optional, independent view of the group nodes that can be active during any of the above group views.
Stacked View
Solution: After expanding the grouped nodes, show the child nodes as vertically stacked.
During stacked view, different sections of a single node can be viewed and each section of the node will have edges connected to it. Each section of the node will be presented by a block and each block will be stacked on top of each other to represent a single node. Each block can be differentiated with a name and a separate color.
Visual Aid:
New Window
Solution: After expanding the grouped nodes, show the child nodes as a new network in a separate window. A “+’ symbol will appear when the mouse is moved over a parent node and when clicked, a new network window pop-up that will show the child nodes as a new network.
Visual Aid:
Group Panel
Solution: For each grouped visualization described above, create a group panel in Cytoscape that will show a more detailed, hierarchical structure of the group. This panel will be very helpful when the groups become more complex with multiple levels of parent nodes. The parent node will be listed in the panel with all the child nodes and their characteristics branching from it. This view will be very similar to Windows Explorer that shows the file hierarchy.
Visual Aid
Tree Map
Solution: A hierarchical node grouping can be flattened out and shown as a birds-eye, textual representation. This view will work for groups that can be represented by trees, ie: multiple parent nodes can exists, but none of the parent nodes can share any child nodes.
Visual Aid: An example of this visualization taken from [http://ivtk.sourceforge.net/] attachment:Treemap.jpg
Mouse-Over Tool
Solution: Create a viewing tool that will be controlled by a mouse and will travel over the network panel, when the tool moves over a parent node, the inside of the parent node.This tool will show an “x-ray”, detailed view of the inside of the parent node.
Visual Aid: An example of this type of tool can be seen here. However instead of a zoomed view, the user will be able to see the child nodes that are inside the parent node. Image taken from [http://ivtk.sourceforge.net/] attachment:Bubble.jpg
Tool Tip:
Solution: The user can have the ability to view information within the node without expanding the group node. A tool tip window can appear when a cursor moves over the group node and a list of names of all the child nodes can appear in the window. Other important information can also appear in this window, such as a list (or a percentage figure if the number child nodes is large) of the type of nodes that exist in this group or other features such as color if necessary.
attachment:ToolTip.jpg
General Notes
Some interesting ideas about group nodes can be found in a document found here [http://www.nature.com/nbt/journal/v25/n5/pdf/nbt1304.pdf]
Converting Between Visualizations
- The user should be able to convert from one type of a visualization to another with a simple mouse click.
Requirements
Deferred Items
Open Issues
Mapping Node Attributes to Nodes
- How should the attributes of the grouped child nodes be mapped to the parent node?
Mapping Edge Attributes
- Should attributes of edges that are contained within a group be mapped to the edges of the parent node. If so, how?
Sharing Child Nodes
- Problems may arise when two or more parent nodes share the same child nodes. How should those child nodes be grouped and visualized?
Backward Compatibility
Expected growth and plan for growth
References
Implementation Plan
Comments
- Idea: layout of biological pathways where network motifs (e.g. a biochemical reaction) is represented as a group, the groups are layed out, then the groups/motifs are viewed as they would be in a textbook e.g. biochemical reactions would be viewed as they are in textbooks. This would include the ability to apply a standard layout to members of a group and view the result.
How to Comment
Edit the page and add your comments under the provided header. By adding your ideas to the Wiki directly, we can more easily organize everyone's ideas, and keep clear records. Be sure to include today's date and your name for each comment. Try to keep your comments as concrete and constructive as possible. For example, if you find a part of the RFC makes no sense, please say so, but don't stop there. Take the extra step and propose alternatives.