Differences between revisions 1 and 2
Revision 1 as of 2012-05-18 22:13:44
Size: 13054
Editor: server2
Comment:
Revision 2 as of 2012-05-18 22:41:38
Size: 11978
Editor: server2
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
== QuickFind ==
Cytoscape includes a Quick Find feature, which enables you to quickly find nodes and edges.
== Enhanced Search ==
Cytoscape includes a search feature, which enables you to quickly find nodes and edges.
Line 4: Line 4:
{{attachment:quick_find2.png}} {{attachment:enhancedSearch.png}}
Line 6: Line 6:
Using Quick Find is very simple. Here is how it works: Using Search is very simple. For example, type in "YL*" in the search box will find all the nodes/edges with string "YL" as prefix in the attributes. Type in "name:YL*" will restrict the search to attribute 'name' only. You can also use 'and', 'or' to make the complex search. The searching is actually based on Apache Lucene. Please look at [[http://lucene.apache.org/core/3_6_0/queryparsersyntax.html|this page]] for more about search syntax.
Line 8: Line 8:
 * Import a network. For example, load up {{{sampleData/galFiltered.sif}}}.
 * Start typing in the text box. For example, enter "yd". The search box will automatically display a list of all matching nodes.
{{attachment:quick_find3.png}}
Line 12: Line 9:
 * Select a matching node. Cytoscape will automatically zoom in on the selected node.
{{attachment:quick_find4.png}}
Line 15: Line 10:
=== Configuring Quick Find ===
Quick Find works by creating an internal index of all nodes within the network. By default, Cytoscape indexes all nodes by the node identifier. However, you can configure Quick Find to index nodes or edges, and you can set any attribute as the index.

For example, if you load up a BioPAX file (such as {{{sampleData/Apoptosis_BioPAX.xml}}}), your network will be automatically annotated with numerous attributes. To index the network based on cellular location, click the Quick Find configuration button, and select "biopax.cellular_location" from the dropdown list.

{{attachment:quick_find5.png}}

You can then quickly find all proteins located in the "plasma membrane" by just typing "p".

{{attachment:quick_find6.png}}

'''Tip:''' If you don't know what to search for, just leave the search box empty, and click on the down arrow directly next to the search box. Cytoscape will provide you with an initial list of matches. In the case below, we will get a list of all distinct cellular locations in the network.

{{attachment:quick_find7.png}}

=== Dynamic Filtering via Quick Find ===
=== Dynamic Filtering ===

Cytoscape includes a search feature, which enables you to quickly find nodes and edges.

[ATTACH]

Using Search is very simple. For example, type in "YL*" in the search box will find all the nodes/edges with string "YL" as prefix in the attributes. Type in "name:YL*" will restrict the search to attribute 'name' only. You can also use 'and', 'or' to make the complex search. The searching is actually based on Apache Lucene. Please look at this page for more about search syntax.

Dynamic Filtering

If you choose to index on a numerical attribute, the Quick Find search box changes to a dynamic slider for quick filtering.

For example:

  1. Import a network such as sampleData/galFiltered.sif using File → Import → Network (multiple file types).

  2. Import an expression data file such as sampleData/galExpData.pvals using File → Import → Attribute/Expression Matrix... .

  3. Configure Quick Find to index the network using the gal1RGExp attribute.
    • [ATTACH]

  4. Use the slider widget to automatically filter the entire network.

[ATTACH]

Filters

Filters allow you to quickly select multiple nodes or edges of interest by comparing node and edge attributes to properties you specify. For example, you can select all the nodes whose name contains a specific pattern, or whose numeric attribute value falls within a certain range. You can also perform complex selection by defining filters and performing the Boolean operation between them.

Since Cytoscape 2.5, the filters are redesigned to provide more user-friendly interfaces. The newly designed filters preserve most of the functionality of the old filters while introducing more, its API can also be used by other plugins. The old filters are still preserved, because there are still a few features are not implemented in new filters, and many users already got used to the old ones.

Using New Filters

By default, you should see a filter icon on the toolbar: [ATTACH] . If you click on it, the filters tab on the Control Panel will be selected. You can also access the filters by clicking directly on the tab or by using the Select menu pull-down and choose “Use Filters” menu item. The filters panel initially looks like this:

[ATTACH]

1. Filter Definition

To create a new filter, click the option button and select “Create new filter” from the list provided. Enter a name for the new filter.

[ATTACH]

[ATTACH]

Definition of simple filter

When a new filter is created, it is empty initially. It can be defined by choosing attributes (one at a time) in the Attribute/Filter comboBox and clicking the Add button. Note that in the comboBox each attribute has a prefix, either node. or edge., denoting what type of attribute it is. After add button is clicked, a widget, depended on the item selected, will be added to the definition panel. If the attribute type is text-based (or String), the widget will be a indexed-text-box widget, if numeric attribute, the widget will be a range slider; both are shown below.

[ATTACH]

For each widget, the name of the attribute it represents is on the left. A NOT checkbox gives the option to get the negation of selection for the widget. There is a trash-can icon on the right. Clicking on the trash-can icon will delete the widget. In this way, the filter definition can be modified after it is defined.

Note that if more than one widget is added on the filter definition panel, the relationship between them is “AND” by default. This relationship can be changed to “OR” by selecting the OR relation in Advanced Panel.

The Advanced panel can be opened by clicking on the plus (+) sign.

[ATTACH]

There are three rows in the advanced panel:

1. The first row, labeled Save. The two checkboxes (Global and Session) will determine where the filter is saved. By default, filters are saved in individual sessions. If the Global checkbox is checked, the filter will be saved in the global properties file. Note also that the prefix of the filter name in the Current Filter dropdown list reflects where it is saved.

2. The second row, Relation, will determine what Boolean operation (AND or OR) will be applied to each individual widget.

3. Negation checkbox. If this checkbox is checked, the result of the filter will be negated.

Definition of complex filter

In the pull-down list of Attribute/Filter comboBox, there are two sections, the top one is the list of attributes, the bottom one is the list of previously defined filter. Those previously dfined filters can also be used as components of other filters. By combinational use of AND, OR, NOT and pre-defined filters, filters with arbitary complexity can be defined.

3. Apply the filter

If a network is small (number of nodes or edges less than 1000), the filter will be applied dynamically when a widget is added or any value is adjusted. If the network is large, then Apply button should be clicked to apply the filter.

The threshold (1000 by default) can be changed by defining a Cytoscape property value dynamicFilterThreshold.

4. Other filters

In the option menu pulldown, there are menu items “Create new topology filter”, “Create new NodeInteraction filter” and “Create new EdgeInteraction filter”.

Topology Filter

Topology filter will select nodes based on the properties of its near-by nodes (neighbors). To create a topology filter, choose the menu item “Create new topology filter” from the option menu. See below,

[ATTACH]

Interaction filter

Interaction filters are used to select nodes/edges based on the properties of their neighboring edges/nodes. See below for a node interaction filter.

[ATTACH]

Using Old Filters

The old filters is the one existed in previous versions of Cytoscape. Several types of filters are available.

Basic filters allow the selection of multiple nodes or edges according to singe attribute data:

  • String filters allow selection of nodes or edges with attributes matching specified text patterns. These patterns may include the wildcards * and ?.
  • Numerical filters allow selection of nodes or edges according to numerical attributes and the mathematical operators >, =, and <.

Compound filters allow selection based on the application of pre-existing filters:

  • Topology filters allow selection of nodes with neighbors that match some pre-existing filter.
  • Boolean filters allow the combination of multiple filters using the AND, OR and XOR operators.

Example filters are shipped with the plugin to get started.

To use the old filters, go to Select → Use Old Filters. You will see a filters window which initially looks like the following:

[ATTACH]

If the first filter is selected, then the window looks as shown:

[ATTACH]

There are three panels in the Filters window:

  • The right-hand panel: An existing or newly created filter can be edited in this area. Each filter type has its own user interface for editing.
  • The lower left panel: All available filters are shown in this list. Initially, this list will contain only sample filters, but as you create more, they will be added here.
  • The upper left panel: Pressing the Create new filter button adds a filter to the “Available Filters” box, and the Remove selected filter button deletes the currently selected filter.

Creating Filters

Clicking the Create new filter button allows you to select a type of filter to create, as shown below.

[ATTACH]

The important thing to realize when creating a filter is that the filter does not do anything by itself. Once created, the filter must be applied to the network.

String Filter

[ATTACH]

The String Filter allows you to filter nodes or edges by a given text attribute of your current loaded network. Search terms are entered in the text box at the bottom. For example, to match any Node whose canonicalName starts with “YDL”, you would select “Node”, “canonicalName” and then type in “YDL*”. The * is important, as it matches any number of characters after YDL. If you want to be more specific and only select nodes whose canonicalName starts with YDL00 followed by any other two characters, you would type “YDL00??”. The “?” denotes any single character, while the “*” represents zero or more characters. Full regular expression searching is supported, although is not covered here. Once the filter is defined, it will be assigned a default descriptive name.

Numerical Filter

[ATTACH]

The Numerical Filter also allows you to filter nodes or edges, and presents you with a list of available attributes. This filter matches all values in the network of your selected attribute that are greater than, less than, or equal to a number you type in the search box.

Node Topology Filter

[ATTACH]

The node topology filter allows you to select all nodes selected by a preexisting filter and having n neighbours found at a distance of m or fewer edges away. For instance, to select all the nodes adjacent to a node with the canonical name matching ‘YD*’, you would “select nodes with 1 neighbors”, “within distance 1”, “that pass the filter Node: canonicalName ~ YD*”.

The node topology filter depends on the existence of other filters. By default, [No Filter] is selected; it doesn't filter out anything, but rather selects all nodes.

Boolean Filter

[ATTACH]

The Boolean Meta-Filter allows you to define a new filter that is a logical combination of existing filters. Available filters are displayed. By selecting one or more filters, you can then choose whether Nodes or Edges pass “ALL” (AND), “AT LEAST ONE” (OR), or “ONLY ONE” (XOR) of the selected filters. Once created, Boolean filters can then themselves be combined using the Boolean filter to create arbitrarily complex logical combinations of filters. Note that unlike the String and Numerical Filters, Boolean filters will need to be assigned a name manually.

Saving Filters

Filters are currently saved automatically in the filters.props file found in the .cytoscape directory, found in each user's home directory. Once created, filters are saved for future sessions, as long as you exit Cytoscape normally via File → Quit (i.e. not via ctrl-c on Linux).

Running filters

Any available filter can be run by pressing the ‘Apply selected filter’ button. When a filter is applied to your network and multiple nodes or edges are selected, all of the normal selection-related operations may be performed, such as Delete Selected Node/Edges, Copy To New Network, and Invert Selection.

The Select Menu

The Select → Nodes and Select → Edges menus provide several mechanisms for selecting nodes and edges. Most options are fairly straightforward; however, some need extra explanation.

Select → Nodes → By Name... selects nodes by the node identifier (ID). This is the value seen in the leftmost column of the attribute browser. This does not change, even if the displayed node label changes!

Select → Nodes → From File... selects nodes based on node identifiers found in a specified file. The file format is simply one node id per line:

Node1
Node2
Node3
...

Cytoscape_3/UserManual/Filters (last edited 2016-04-26 22:17:33 by server2)

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