Differences between revisions 31 and 32
Revision 31 as of 2007-10-08 16:10:43
Size: 9943
Editor: GaryBader
Comment:
Revision 32 as of 2007-10-09 04:15:10
Size: 10229
Editor: CPE0004e28895fd-CM0019477f611c
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 data attributes of the child nodes as visual attributes of the group node.   ''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, or other types of node visual attributes.   '''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 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
 . ''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 30: 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 37: 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 39: 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 49: 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 53: Line 37:
=== Expanded View Visualization 1 – Stacked 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 56: 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 58: 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 60: 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.
      attachment:BoxCustom.jpg
Line 63: Line 47:
'''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.       ''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
Line 65: Line 50:
'''Visual Aid:'''       ''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
Line 67: Line 53:
=== 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.
      ''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
Line 70: Line 57:
'''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.   '''Use Cases:'''
      ''Use Case 1''
      "Named list of genes. Piet & GenMAPP" - [http://www.cytoscape.org/cgi-bin/moin.cgi/groupAPI/UseCase_7A]
Line 72: Line 61:
'''Visual Aid''' === 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 74: Line 64:
=== Expanded View Visualization 4 – Tree Map ===
'''Solution:''' A hierarchical node grouping can be flattened out and shown as a birds-eye, textual representation.
  ''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.
Line 77: Line 68:
'''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.   '''Visual Aid:'''
Line 79: Line 70:
'''Visual Aid:''' An example of this visualization taken from [http://ivtk.sourceforge.net/]   ''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.
Line 81: Line 73:
attachment:Treemap.jpg   '''Visual Aid:'''
Line 83: Line 75:
=== 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.
  ''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.
Line 86: Line 78:
'''Characteristics:'''This tool will show an “x-ray”, detailed view of the inside of the parent node.   '''Visual Aid'''
Line 88: Line 80:
'''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/]   ''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.
Line 90: Line 83:
attachment:Bubble.jpg   '''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

TableOfContents([2])

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:

    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:

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.

General Notes

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.

GroupViews (last edited 2009-09-22 01:57:32 by GaryBader)

Funding for Cytoscape is provided by a federal grant from the U.S. National Institute of General Medical Sciences (NIGMS) of the Na tional Institutes of Health (NIH) under award number GM070743-01. Corporate funding is provided through a contract from Unilever PLC.

MoinMoin Appliance - Powered by TurnKey Linux