← Revision 18 as of 2007-04-25 20:48:43
5356
Comment:
|
← Revision 19 as of 2007-04-25 21:23:22 →
5269
|
Deletions are marked like this. | Additions are marked like this. |
Line 10: | Line 10: |
Description: Cytoscape is able to visualize very large network with thousands of nodes and edges. Cytoscape provides three ways to select a subset of a network, Select, QuickFind and Filter. Filter, a Cytoscape plugin, is a powerful selection tool, which is able to do selection based on complex criterion. However, the feedback from Biologist is that “it is useful, but hard to use”. For example, (1) filters are saved globally only, not in session; (2) Filter names are generated automatically, which is not meaningful to human; (3) the text field does not have Google suggestion/ not dynamic, as QuickFind does. Therefore, it is necessary to redesign the UI of the filter and make it more user friendly. | '''Description''': Cytoscape is able to visualize very large network with thousands of nodes and edges. Filter, a Cytoscape plugin, is a powerful selection tool, which is able to do selection based on complex criterion. However, the feedback from Biologist is that “it is useful, but hard to use”. For example, (1) filters are saved globally only, not in session; (2) Filter names are generated automatically, which is not meaningful to human; (3) the text field does not have Google suggestion/ not dynamic, as QuickFind does. Therefore, it is necessary to redesign the UI of the filter and make it more user friendly. |
Line 24: | Line 24: |
The goal of this RFC is to provide a new design of filter UI, which use familiar GUI components to represent each filter. The new design should have the following characteristic, | The goal of this RFC is to provide a new design of filter UI, which use familiar GUI components to represent each filter. The new design should have the following characteristics, |
Line 32: | Line 32: |
4. Single Filter type will be determined automatically by the data type of attribute, string type- -> text field, numeric type (including Boolean type) --> RangeSlider bar. | 4. Single Filter type will be determined automatically by the data type of the attribute, string type- -> text field, numeric type (including Boolean type) --> RangeSlider bar. |
Line 34: | Line 34: |
5. Composite filter will be consist of a list of single filter with “AND” relationship | 5. Composite filter will be consist of a list of single filters with logical “AND” relationship |
Line 36: | Line 36: |
6. Suggestions will be added for each text field | 6. Suggestions will be added for each text field as in QuickFind |
Line 93: | Line 93: |
== Backward Compatibility == |
RFC Name : ... |
Editor(s): ... |
About this document
This is an official Request for Comment (RFC) for Filters UI Redesign.
Description: Cytoscape is able to visualize very large network with thousands of nodes and edges. Filter, a Cytoscape plugin, is a powerful selection tool, which is able to do selection based on complex criterion. However, the feedback from Biologist is that “it is useful, but hard to use”. For example, (1) filters are saved globally only, not in session; (2) Filter names are generated automatically, which is not meaningful to human; (3) the text field does not have Google suggestion/ not dynamic, as QuickFind does. Therefore, it is necessary to redesign the UI of the filter and make it more user friendly.
For details on RFCs in general, check out the [http://www.answers.com/main/ntquery?method=4&dsid=2222&dekey=Request+for+Comments&gwp=8&curtab=2222_1&linktext=Request%20for%20Comments Wikipedia Entry: Request for Comments (RFCs)]
Status
Open for public comment
How to Comment
To view/add comments, click on any of 'Comment' links below. 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. Here is an example to get things started: ["/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.
Proposal
The goal of this RFC is to provide a new design of filter UI, which use familiar GUI components to represent each filter. The new design should have the following characteristics,
1. filter panel will be placed in CytoPanel_3
2. filter name will be given by user
3. user has the option to save the filter in session or globally
4. Single Filter type will be determined automatically by the data type of the attribute, string type- -> text field, numeric type (including Boolean type) --> RangeSlider bar.
5. Composite filter will be consist of a list of single filters with logical “AND” relationship
6. Suggestions will be added for each text field as in QuickFind
Biological Questions / Use Cases
Scenario: A user already imported network and attributes into Cytoscape, he/she want to select a set of nodes whose attribute “Unique identifier” has pattern “YL*” and its attribute “gal1RGexp” < 0.05.
1. Click the filter icon on the tool bar
2. CytoPanel_3 shows up on the left side of the Cytoscape window. TabbedPane “Advanced selection” is selected.
3. Click the option icon, a pulldown menu shows “create, delete, rename, copy”. select “create”
4. Filter creation dialog show up. Type in “My first filter” and click OK button.
5. A combobox for attribute selection show up, choose “Unique Identifier” and click add button
6. A text field with label “Unique identifier” show up.
7. Choose “gal1RGexp” at the attribute combobox and click the “Add” button
8. A rangeSliderBar shows up. Define the range of the value by move the bars.
9. When user type in the text on the textfield and move the slider bar, the selection on the canvas is changing accordingly.
Design
1. The initial state
- attachment:filterInitialScreen.JPG
2. The composite filter
- attachment:filtercomposite.JPG
Note:
(1) The Advanced panel holds the default settings, it is collapsed by default.
(2) Suggestion will be added to the textfield as QuickFind does
(3) The JSliderBar will be replaced by JRangeSliderBar.
(4). Boolean meta – multiple sliders, logical “and” only
(5). The “Apply” button will show up for large network only (>1000 nodes)
3. String filter/Numeric filer/ Interaction filter
They are all special cases of the composite filter, i.e. only one attribute is selected.
4. Alternative design
attachment:AlternativeDesign.JPG
Deferred Items
• Topology filter -- will use local attribute (network specific), normal attribute filter, and technically it is feature of network, not index
• Complex Boolean operation (how to handle?)
Open Issues
Expected growth and plan for growth
combine Filter and QuickFind
Filter API redesign
References
Implementation Plan
Filters/select/QuickFind should work together, try not to duplicate the code
1. front-end (GUI) --- 1~2 weeks
FilterMainPanel.java
2. back-end --- ???? weeks
FilterManager.java
- Save session
- Create/Delete/Rename filter
Indexing (from QuickFind)