Genonets Server (v.0.2)

Tutorial

by

Fahad Khalid and Joshua L. Payne


Table of Contents

1. Quick start

2. Genonets Server Input

2.1. Complete processing mode

2.1.1. Input file

2.1.1.1. Genotypeset

2.1.1.2. Genotype

2.1.1.3. Score

2.1.1.4. Delta

2.1.2. Use sample file

2.1.3. Alphabet Type

2.1.4. Tau

2.1.5. Include Indels

2.1.6. Perform all analyses

2.1.7. Select one or more analyses

2.1.8. Your email address

2.1.9. Consider reverse complements

2.2. Visualization only mode

3. Progress page

3.1. Job status

3.1.1. Processing

3.1.2. Queued

3.2. Error information

3.3. URL for Results and Visualization

4. Download options and Result files

4.1. Download results

4.1.1. in_params.txt

4.1.2. Genotype_set_measures.txt

4.1.3. Genotype_set_overlap.txt

4.1.4. <genotypeSetName>_genotype_measures.txt

4.1.5. <genotypeSetName>.gml and <genotypeSetName>_dominant.gml

4.2. Download JSON

5. Interactive Visualization

5.1. Basic interactivity

5.2. Phenotype Network

5.2.1. What is the Phenotype network?

5.2.2. Network

5.2.2.1. Hover

5.2.2.2. Node selection

5.2.3. Control panel

5.2.3.1. Control Graph Visualization

5.2.3.1.1. Opacity

5.2.3.1.2. Reset

5.2.3.1.3. Lock

5.2.3.2. Search Node Attributes

5.2.4. Data table

5.2.4.1. Node selection

5.2.4.2. Column selection

5.2.4.3. Histogram

5.2.4.4. Bar plot

5.2.4.5. Correlate

5.2.5. Context menu

5.2.5.1. Can evolve to

5.2.5.2. Is accessible from

5.2.5.3. Diameter Path

5.2.5.4. Compare to

5.2.5.5. Path Epistasis

5.2.5.6. Landscape view

5.2.5.7. Squares: All

5.2.5.8. Squares: No epistasis

5.2.5.9. Squares: Magnitude epistasis

5.2.5.10. Squares: Simple sign epistasis

5.2.5.11. Squares: Reciprocal sign epistasis

5.3. Genotype Network

5.3.1. What is the Genotype Network?

5.3.1.1. Network

5.3.1.2. Hover

5.3.1.3. Node selection

5.3.2. Control Panel

5.3.3. Data Table

5.3.3.1. Node selection

5.3.3.2. Column selection

5.3.3.3. Histogram

5.3.3.4. Correlate

5.3.4. Context Menu

5.3.4.1. Evolvability target sets

5.3.4.2. Overlap target sets

5.3.4.3. Neighborhood

5.3.4.4. Epistasis types: bar plot

5.3.4.5. Path Epistasis

5.3.4.6. Paths to summit

5.3.4.7. Highlight in landscape view

5.3.4.8. Squares: All

5.3.4.9. Squares: No epistasis

5.3.4.10. Squares: Magnitude epistasis

5.3.4.11. Squares: Simple sign epistasis

5.3.4.12. Squares: Reciprocal sign epistasis

5.4. Comparison View

5.4.1. Context menu

5.4.1.1. Evolvability target genotypes

5.4.1.2. Overlapping genotypes

5.4.2. Histogram

5.5. Squares View

5.5.1. General interactive features

5.5.1.1. Square selection

5.5.1.2. Node hover

5.5.1.3. Edge hover

5.5.2. Node filter

5.6. Landscape View

5.6.1. Pan

5.6.2. Zoom

5.6.3. Node hover

5.6.4. Node selection

5.6.5. Context menu

5.6.5.1. Reset

5.6.5.2. Highlight in main view

5.7. Charts View

5.7.1. Tooltips


Browser support notice

The Genonets Server currently supports the following browsers:


New in v.0.2


1. Quick start

For a quick tour of the Genonets Server, follow these steps:

  1. Open the input form on the following URL: http://ieu-genonets.uzh.ch/.
    input_form_clean.png
  2. Check the ‘Use sample file’ check box. This replaces the ‘Choose File’ option with a link to the sample file. Moreover, all the mandatory parameters are set. Following is a screenshot of the resulting page:
    input_form_sampleFile_checked.png
    The sample file can be downloaded by clicking on the ‘Sample input file’ link.
    Note: In the latest version of the Genonets Server, the 'Consider reverse complements' checkbox is also checked when the 'Use sample file' checkbox is checked.
  3. Click the ‘Submit’ button to send the request to the server.
    input_form_sampleFile_submit.png
  4. This directs the browser to the job status page. This may take a few seconds.
    progress_page_noURL.png
  5. Once the request has been processed, the browser loads the visualization page.
    viz_page_clean.png
  6. The analysis results can be downloaded by clicking on the ‘Download results’ button.
    viz_page_downloadResults.png
  7. The visualization input file can be downloaded by clicking on the ‘Download JSON’ button.
    viz_page_downloadViz.png
  8. You can start exploring the visualization features by clicking on one of the nodes in the ‘Phenotype Network’.
    viz_genotypeNetwork.png

2. Genonets Server Input

The Genonets Server supports two processing modes, i) Complete, and ii) Visualization only. Depending on the choice of processing mode, the input requirements vary. We will explore the two processing modes in the following subsections.

Note: All labels and input elements on the input page support tooltips. Hovering the mouse cursor over an input element or the corresponding text label enables the tooltip.

2.1. Complete processing mode

The complete processing mode comprises the following steps:

  1. User uploads an input file in the Genonets input file format.
  2. User sets input parameters on the input form, selects a set of analyses, and submits the input data.
  3. The server parses the input file, creates the genotype networks, and performs all the selected analyses.
  4. Analysis results and visualization are presented to the user.

The following subsections describe the input parameters available in this processing mode.

2.1.1. Input file

In the 'Complete' processing mode, the Genonets Server expects a text file, i.e., a file with ‘.txt’ extension as input, in Tab Separated Value (TSV) format (columns are separated by tabs).

The first row must always comprise the column headers, which are: ‘Genotypeset’, ‘Genotype’, ‘Score’, and ‘Delta’. The parser is agnostic to the order of the columns, but case-sensitive.

Each row after the headers represents attributes of a single genotype. The Genonets input file format requires that the following four attributes (corresponding to the column headers) be defined for each genotype:

2.1.1.1. Genotypeset

The genotype set to which the genotype belongs. A genotype may fall within the intersection of multiple genotype sets. In this case, the genotype must be specified in multiple rows, with one row corresponding to one of the genotype sets. Then, the number of rows in which the genotype appears would correspond to the number of genotype sets that contain the genotype.

2.1.1.2. Genotype

The genotype, as a sequence of letters from the selected alphabet type. All genotypes in the input file must be of the same alphabet type, and of equal length.

2.1.1.3. Score

Quantitative phenotype value corresponding to the genotype. In cases where the value is not available, it should be replaced by '0'.

2.1.1.4. Delta

Noise associated with the quantitative phenotype data. The same delta value must be used for all genotypes within the same genotype set, i.e., for all rows with the same value for 'Genotypeset'. In cases where the value is not available, it should be replaced by '0'.

Note: Missing values are not permitted in the Genonets input file format.

Let us consider a concrete example by taking a look at the sample input file. The sample input file contains data for five Mus transcription factors. Each ‘Genotype’ is an 8nt long DNA sequence, which represents a possible transcription factor binding site. The 'Genotypeset' corresponding to the genotype is the name of the transcription factor that binds the genotype. The 'Score' is the E-score, a measure of the relative binding affinity of the transcription factor to the DNA sequence[1] (i.e., genotype). Finally, the 'Delta' value is a measure of experimental noise, in this case determined by comparing binding affinities on two different microarray designs. When performing landscape related analyses such as ‘Paths’, ‘Peaks’, and ‘Epistasis’, the score for each genotype is considered as a range from  to .

In the following figure, the first colored box shows the column headers. The colored boxes that follow highlight parts of the genotype data for the five genotype sets in the sample input file.

input_file.png

2.1.2. Use sample file

The sample input file can be selected by clicking the 'Use sample file' checkbox. Observe that on clicking the checkbox, the file selection element is replaced by a link to the sample file. This link can be used to download the sample file if needed.

2.1.3. Alphabet Type

All genotypes in the input file must be sequences of either,

The user must use this list to select the alphabet type that corresponds to the genotypes in the input file.

2.1.4. Tau

Tau’ is a number that can be used to filter genotypes based on score. Only genotypes with score values greater than or equal to ‘Tau’ are considered during creation and analysis of genotype networks. E.g., the sample file contains over 1,700 genotypes. However, less than 50% are binding sites that bind the transcription factors with high enough affinity to be considered in our analyses. When you check the 'Use sample file' checkbox, ‘Tau’ is set to 0.35. This is because genotypes with binding affinity scores below this value have high false discovery rates[2], and are therefore not useful for our analyses.

2.1.5. Include Indels

If the 'Include Indels' checkbox is unchecked, the only mutations considered are point mutations, i.e., mutations where a letter in the sequence is replaced by a different letter from the corresponding alphabet. If the 'Include Indels' checkbox is checked, mutations that shift the entire genotype by one letter are also considered[3].

The choice of mutations considered during network creation can play an important role in the structure of genotype networks. E.g., if you perform analyses on the sample input file without including indels, the resulting graph for the genotype set ‘Foxa2’ has multiple components (as opposed to just one component otherwise).

2.1.6. Perform all analyses

If you want to perform all available analyses on your input data, check this box. This saves one the effort of selecting all analysis types manually from a list.

2.1.7. Select one or more analyses

The Genonets Server always performs 'Evolvability' analysis on the input data. However, it is possible to select one or more of the other analysis types from the multiple selection list. The 'Ctrl' and 'Shift' keys on PCs (and analogues on Mac) can be used for multiple selection and deselection.

2.1.8. Your email address

This input parameter is optional. If an email is provided,

2.1.9. Consider reverse complements

This checkbox becomes available whenever ‘DNA’ is selected as the alphabet type. The state of this checkbox affects both creation and analysis of genotype networks.

It can be useful to check the checkbox when the double stranded nature of DNA needs to be taken into consideration, e.g., transcription factor binding sites.

2.2. Visualization only mode

In this mode, the only input requirement is a Genonets Server visualization input file. A visualization input file is generated by the Genonets Server after it has performed all analyses, and contains data required by the interactive visualization features available on the visualization page. This file contains data in the JavaScript Object Notation (JSON) format.

The file can be downloaded from the visualization page. For further information, please see Section [Download JSON].


3. Progress page

The progress page appears immediately after submission of the input form. The following subsections specify the information available on this page.

Note: For large input files, the time it takes for the input data to reach the server can be long. In such cases, the progress page might not appear immediately after clicking the ‘Submit’ button.

3.1. Job status

There are two values for job status that can be displayed on the progress page. These are described in the following subsections.

processing.png

3.1.1. Processing

This means that the server has already started processing the job.

3.1.2. Queued

This means that the job is queued due to lack of available processing units on the server, and processing will start as soon as processing resources are available.

3.2. Error information

If the Genonets Server experiences an error while processing the request, the progress page is redirected to the error page. The error page displays the error information in as much detail as is available for the error encountered. E.g., if all genotypes in the input file are not of the same length, the following error is displayed:

error_page.png

3.3. URL for Results and Visualization

Perhaps the most important piece of information on the progress page is the URL. The progress page has the same URL as the visualization page, which is made available once the job has been successfully processed. Therefore, it is important as a user to bookmark the progress page. One can then visit this page at a later point in time.

bookmark_url.png

Note: Even if you provide your email address on the input form, it is still a good practice to bookmark the progress page URL. This ensures that even if there is an email system error, the link to your results page is available.


4. Download options and Result files

Please follow the steps enumerated in Section [Quick start] to arrive at the visualization page using the Genonets sample input file. At this point, you should see two download buttons.

download_buttons.png

4.1. Download results

Click this button to download the compressed archive of analysis results. The following figure shows the list of files extracted from the archive generated after processing the sample input file. Similar file types are enclosed in the same colored boxs.

result_files_new.png

The following subsections describe the files contained in the archive.

4.1.1. in_params.txt

This file simply reproduces the input parameters used to run the analyses. It is included just so that one can keep track of the parameters used.

4.1.2. Genotype_set_measures.txt

This file includes measures computed at the level of the genotype set. Each row contains measures for a single genotype set.

Since there are five genotype sets in the sample input file, and each one of these have one or more genotypes with scores above the threshold ‘Tau’, we see five rows in 'Genotype_set_measures.txt'. The following figure shows part of the file with the row for ‘Foxa2’ highlighted.

genotype_measures.png

Note: The number of columns in this file depends on the selected analysis types.

Note: The details of the measures included in the file are available in the online documentation. Please visit the Genonets Server Learn page for more information.

4.1.3. Genotype_set_overlap.txt

This file contains information about the number of genotypes common to each possible pair of genotype sets in our data set. The overlap between two genotype sets is the intersection of the two sets.

For example, in the 'Genotype_set_overlap.txt' generated from the sample input file, we can see that ‘Foxa2’ and ‘Mafb’ share 8 genotypes, while ‘Foxa2’ and ‘Bbx’ share 3 genotypes. None of the other pairs of genotype sets share any genotypes.

overlap.png

Note: In order for this file to be generated, 'Overlap' analysis must be selected at the time of submitting the input form.

4.1.4. <genotypeSetName>_genotype_measures.txt

Corresponding to each genotype set, a file is generated with measures for individual genotypes. Each row holds measures for a single genotype.

The ‘Foxa2_genotype_measures.txt’ generated by processing the sample file is partly shown in the figure below.

foxa2_measures.png

Note: The number of columns in this file depends on the selected analysis types.

Note: The details of the measures included in the files are available in the online documentation. Please visit the Genonets Server Learn page for more information.

4.1.5. <genotypeSetName>.gml and <genotypeSetName>_dominant.gml

GML stands for “Graph Modeling Language”, which is a format supported by certain graph visualization and exploration tools such as Gephi. For genotype sets with only one component, the Genonets Server generates only one GML file. For genotype sets with two or more components, two GML files are generated: one for the entire graph, and the other for the giant component only (i.e., the dominant genotype network). These files provide the user with the possibility to visualize and/or explore the graphs outside the Genonets Server environment.

In the sample results, we can see that there is only one GML file corresponding to ‘Foxa2’, while there are two GML files for each of the other genotype sets. This is because the graph corresponding to ‘Foxa2’ has only one component, while graphs corresponding to all the other genotype sets have multiple components.

4.2. Download JSON

Click this button to download the compressed archive of the visualization input. This file contains all the data required by the visualization page to generate the interactive visualization features. With this file it is possible for one to visualize the analysis results at any time, without having to perform the analyses again. This can be done by using the 'Visualization only' processing mode on the Genonets Server input form.

‘JSON’ stands for “JavaScript Object Notation”, which is one of the most commonly used data formats for web applications. The Genonets Server uses this format to store all the data required by the interactive visualization interface.

Note: The user is advised not to manipulate the visualization input file, since it is designed for machine parsing only.

Note: Even though the JSON file is available offline once downloaded from the server, it is not possible to load the visualization without connecting to the Genonets Server.


5. Interactive Visualization

In this Section, we will explore the interactive visualization features available in the Genonets Server.

Please follow the steps enumerated in Section [Quick start] to arrive at the visualization page using the Genonets sample input file.

5.1. Basic interactivity

Following are the most basic interactive features available for different types of network visualizations:

5.2. Phenotype Network

Let us start with the ‘Phenotype Network’ view.

5.2.1. What is the Phenotype network?

For a more formal definition, as well as further details, please visit the Genonets Server Learn page.

The phenotype network shows how different genotype sets are connected via non-neutral  mutations. Each node in the network represents a genotype set. In the phenotype network generated using the sample input file, an edge from ‘Foxa2’ to ‘Bbx’ means that there is at least one genotype in ‘Foxa2’ that can evolve to a genotype in ‘Bbx’ via a single non-neutral mutation. We can also see that ‘Bcl6b’ is not connected to any of the other nodes. This implies that there are neither any genotypes in ‘Bcl6b’ that can evolve to genotypes in any of the other genotype sets, nor are there any genotypes in any of the other genotype sets that can evolve to genotypes in ‘Bcl6b’.

There are three parts of the ‘Phenotype Network’ view. These are described in the following subsections.

5.2.2. Network

The first part of the phenotype network view is the graph/network visualization. The graph layout is generated using the Fruchterman-Reingold algorithm available in the python-igraph library.

5.2.2.1. Hover

If you hover the mouse cursor over one of the nodes, you can see that name of the corresponding genotype set appears as tooltip text.

phenotype_network_hover.png 

5.2.2.2. Node selection

A node in the phenotype network can be selected via a single click. This has the following effects:

The figure below highlights the above-mentioned effects when ‘Foxa2’ is selected in the sample network.

phenotype_network_nodeSelection.png

phenotype_network_rowSelection.png

Note: The context menu features are common to the network and table views, and will therefore be discussed in Section [Context menu].

5.2.3. Control panel

The control panel is located right below the network visualization. It is functionally divided into the following two parts,

5.2.3.1. Control Graph Visualization

The controls in this category are designed to further simplify interactivity of the network visualization. Lets take a look at each control individually.

5.2.3.1.1. Opacity

Try moving the opacity slider to the left. You’ll notice a decrease in the node and edge opacity of the network. This is useful when the network is very dense, and the node one is looking for is buried underneath other nodes. Reducing the opacity can often make it easier to look for a highlighted node.

5.2.3.1.2. Reset

The ‘Reset’ button resets the appearance of the graph visualization.

Click on one of the nodes in the graph to mark it as selected, and then press the ‘Reset’ button. You’ll observe that the highlighting is removed.

5.2.3.1.3. Lock

This button makes it possible to drag a node on the canvas without selecting it. Let’s consider an example.

You’ll notice that even though the ‘Bbx’ node has been successfully moved, it is also now selected, and the ‘Bbx’ genotype network is now displayed in ‘Genotype Network’ view. What if you wanted to move the ‘Bbx’ node without marking it as selected, so that the ‘Foxa2’ node would still be selected when you drag ‘Bbx’?

This is where the ‘Lock’ button comes in handy. Follow these steps to see how.

  1. Click on the ‘Foxa2’ node and make sure it is selected.
  2. Now press the ‘Lock’ button.
  3. Click on the ‘Bbx’ node and drag it to a different position.

You’ll notice the following:

Note: Clicking on a node while the network visualization is locked still results in the corresponding row in the table being highlighted.

5.2.3.2. Search Node Attributes

This set of controls is designed to facilitate searching for nodes based on the attributes computed during the analysis process. Let’s consider an example to see how the search function works.

  1. Click the ‘Reset’ button to make sure none of the nodes are highlighted.
  2. Enter the genotype set name ‘Foxa2’ (without the quotes) in the ‘Value’ field.
  3. Select the ‘=’ operator from the ‘Op’ list.
  4. Select ‘Name’ in the ‘Search by’ list.
  5. Press ‘Go’. In the network visualization, you should see the ‘Foxa2’ node as highlighted.

For numeric attributes, in addition to ‘=’, ‘<’, and ‘>’ operators, it is possible to use the ‘Range’ operator. Let’s try another example, where we would like to find the genotype sets for which phenotype evolvability lies in the closed interval [0.25, 0.5], i.e., ‘0.25’ and ‘0.5’ are included in the interval.

  1. Click the ‘Reset’ button to make sure none of the nodes are highlighted.
  2. Enter ‘0.25 : 0.5’ (without the quotes) in the ‘Value’ field.
  3. Select ‘Range’ from the ‘Op’ list.
  4. Select ‘Evolvability’ from the ‘Search by’ list.
  5. Press ‘Go’. You should see the nodes corresponding to ‘Foxa2’, ‘Bbx’, and ‘Ascl2’ highlighted.

Please note that the ‘min’ and ‘max’ values in the interval are separated by the ‘:’ character.

Some of the attributes are computed as lists. The ‘in’ operator can be used to search inside a list. Let’s see an example.

  1. Click the ‘Reset’ button to make sure none of the nodes are highlighted.
  2. Enter ‘Bbx’ (without the quotes) in the ‘Value’ field.
  3. Select ‘in’ from the ‘Op’ list.
  4. Select ‘Evolvability targets’ from the ‘Search by’ list.
  5. Press ‘Go’. ‘Foxa2’ and ‘Mafb’ should be highlighted as the target genotype sets. ‘Bbx’ is also highlighted, but in a different color.

Figures below depict all three of the above-mentioned scenarios.

control_eq.png

control_range.png

control_in.png

5.2.4. Data table

The table below the control panel contains all the attributes computed at the genotype set level. Rows correspond to genotype sets, and columns correspond to attributes. Please note that the set of attributes available in the table depends on the set of analysis types selected at the time of input form submission.

The interactive features supported by the table view are described in the subsections to follow.

Note: The row context menu features are common to the network and table views, and will therefore be discussed in Section [Context menu].

5.2.4.1. Node selection

If you click on a row in the table, the corresponding genotype set is highlighted in the network view.

5.2.4.2. Column selection

If you click on a column header, the entire column is selected. Column selection is used in plotting columns values, as described in the sections to follow.

5.2.4.3. Histogram

The relative frequency distribution of values in a column can be visualized as a histogram.

Suppose we would like to view the distribution of ‘Robustness’ across all genotype sets.

  1. Scroll horizontally to the ‘Robustness’ column.
  2. Right click on the column header.
  3. Select ‘Histogram’ from the context menu. The required relative frequency histogram appears in the ‘Charts View’.

tableMenu_histogram.png

histogram_robustness.png

Note: In case the browser window does not automatically scroll down to the ‘Charts View’, you can manually scroll to the bottom of the browser window to locate the ‘Charts View’.

5.2.4.4. Bar plot

The values in a column can be visualized as a bar plot as well.

Suppose we would like to plot the ‘Robustness’ values for all genotype sets. We can follow these steps:

  1. Scroll horizontally to the ‘Robustness’ column.
  2. Right click on the column header.
  3. Select ‘Bar plot’ from the context menu. The bar plot appears in the ‘Charts View’.

tableMenu_barPlot.png

barPlot_robustness.png

Note: In case the browser window does not automatically scroll down to the ‘Charts View’, you can manually scroll to the bottom of the browser window to locate the ‘Charts View’.

5.2.4.5. Correlate

This option is used to generate a scatter plot of two columns.

Suppose we would like to get a rough idea of the relation between ‘Neighbor abundance’ and ‘Diversity index’ over all the genotype sets in the phenotype network.  We can follow these steps:

  1. Deselect any columns that are already selected.
  2. Select the ‘Neighbor abundance’ column by clicking on the corresponding column header.
  3. Select the ‘Diversity index’ column by clicking on the corresponding column header.
  4. Press ‘Correlate’. The scatter plot appears in the ‘Charts View’.

correlate_table.png

correlate_chart.png

Note: In case the browser window does not automatically scroll down to the ‘Charts View’, you can manually scroll to the bottom of the browser window to locate the ‘Charts View’.

5.2.5. Context menu

In order to enable the context menu, right click on a node in the network view, or the corresponding row in the table.

contextMenu_phenotypeNetwork.png

contextMenu_phenotypeNetwork_table.png

The following subsections describe the various options available via the context menu.

Note: Availability of certain options is dependent on the selected analysis types. Please visit the Genonets Server Learn page for further details.

5.2.5.1. Can evolve to

This option highlights the genotype sets to which the selected genotype set can evolve. The nodes that are highlighted as a result are those that contain at least one genotype to which one or more genotypes in the selected genotype set can evolve.

To see this in action, follow these steps:

  1. Make sure the network view is unlocked.
  2. Click on the node corresponding to 'Foxa2'.
  3. Right click on the same node. You should now see the context menu.
  4. Click on the 'Can evolve to' option. Nodes corresponding to 'Mafb' and 'Bbx' should be highlighted.

canEvolveTo_1.png

canEvolveTo_2.png

5.2.5.2. Is accessible from

This option highlights the genotype sets from which the selected genotype set is accessible. In each of the highlighted nodes, there is at least one genotype that can evolve to a genotype in the selected node.

To see this in action, follow these steps:

  1. Make sure the network view is unlocked.
  2. Click on the node corresponding to 'Ascl2'.
  3. Right click on the same node. You should now see the context menu.
  4. Click on the 'Is accessible from' option. The node corresponding to 'Mafb' should be highlighted.

isAccessibleFrom_1.png

isAccessibleFrom_2.png

5.2.5.3. Diameter Path

Click on this option to highlight a path in the corresponding genotype network. The length of this path is the same as the diameter of the genotype network.

diameterPath_1.png

diameterPath_2.png

Note: There can be more than one path in the network that are of the same length as the diameter. The path highlighted here is an arbitrarily chosen one of these. The sole purpose of this feature is to give the user a visual clue as to the breadth of the network, i.e., the highest number of 1-mutations between two genotypes in the network.

5.2.5.4. Compare to

This option enables the 'Comparison View'. The following two steps are involved in enabling the comparison view:

  1. Choose the 'Compare to ...' option from the context menu.
  2. Click on the node that represents the genotype set with which you'd like to compare the genotype set represented by the selected node.

See Section [Comparison View] for in-depth coverage of the ‘Comparison View’, along with examples.

5.2.5.5. Path Epistasis

This option opens the 'Path epistasis' plot in the 'Charts View'.

The path epistasis plot shows, in what percentage an accessible mutational path would encounter different types of epistasis (i.e., magnitude, simple sign, reciprocal sign) from the furthest point in the genotype network to the genotype with the highest score (a.k.a Summit). The percentage of different types of epistasis is averaged over all nodes in the corresponding genotype network.

Let’s take a look the path epistasis plot for 'Foxa2'. Follow these steps to display the plot:

  1. Click on the node corresponding to 'Foxa2'.
  2. Right click on the node to open the context menu.
  3. Click on the 'Path Epistasis' option. The browser window should automatically scroll to the 'Charts View', where the plot is displayed. (In case the browser window does not automatically scroll down to the ‘Charts View’, you can manually scroll to the bottom of the browser window to locate the ‘Charts View’)

On the x-axis, we can see that the genotypes farthest from the summit are six mutations away. On average, a genotype at 6 mutations from the summit, and evolving into the summit one mutation per step, would encounter some amount of simple sign epistasis on the segment between 4 mutations from the summit to 1 mutation from the summit; and an even lower amount of reciprocal sign epistasis on the segment between 3 mutations from the summit to 2 mutations from the summit. We can see that the overall path is primarily dominated by a combination of no epistasis and magnitude epistasis.

pathEpistasis_1.png

pathEpistasis_2.png

Please note that in this case, we are viewing the genotype network not as a neutral network, but rather as a landscape where the peaks are determined by genotypes with higher score values. The path epistasis plot is a way of looking at one aspect of the accessibility of this adaptive landscape, because some classes of epistasis impede adaptation more than others.

5.2.5.6. Landscape view

This option opens the 'Landscape View', where the corresponding genotype network is displayed in the landscape layout.

See Section [Landscape View] for in-depth coverage of the 'Landscape View'.

5.2.5.7. Squares: All

This option opens the 'Squares View' and displays all the squares in the corresponding genotype network.

See Section [Squares View] for in-depth coverage of the 'Squares View'.

5.2.5.8. Squares: No epistasis

This option opens the 'Squares View' and displays the squares exhibiting no epistasis in the corresponding genotype network.

See Section [Squares View] for in-depth coverage of the 'Squares View'.

5.2.5.9. Squares: Magnitude epistasis

This option opens the 'Squares View' and displays the squares exhibiting magnitude epistasis in the corresponding genotype network.

See Section [Squares View] for in-depth coverage of the 'Squares View'.

5.2.5.10. Squares: Simple sign epistasis

This option opens the 'Squares View' and displays the squares exhibiting simple sign epistasis in the corresponding genotype network.

See Section [Squares View] for in-depth coverage of the 'Squares View'.

5.2.5.11. Squares: Reciprocal sign epistasis

This option opens the 'Squares View' and displays the squares exhibiting reciprocal sign epistasis in the corresponding genotype network.

See Section [Squares View] for in-depth coverage of the 'Squares View'.

5.3. Genotype Network

In this Section, we will take a deep dive into the 'Genotype Network' view.

5.3.1. What is the Genotype Network?

A genotype network is a graph with the following properties:

Let’s consider the genotype network corresponding to the 'Foxa2' genotype set, created using the sample input file. In this specific case, the properties listed above are satisfied as follows:

5.3.1.1. Network

The first part of the 'Genotype Network' view is the graph/network visualization. The graph layout is generated using the Fruchterman-Reingold algorithm available in the python-igraph library.

Note: A genotype set may have multiple genotype networks, i.e., multiple components that are not connected to one another. In the Genonets Server however, all analyses are performed on the dominant genotype network (a.k.a the giant component) only. Therefore, the graph presented in the Genotype Network view represents the dominant genotype network.

5.3.1.2. Hover

If you hover the mouse cursor over a node, you'll see the following information appear in the tooltip text:

genotypeNetwork_hover.png

5.3.1.3. Node selection

Clicking on a node in the 'Genotype Network' view has the following effects:

genotypeNetwork_nodeSelection.png

genotypeNetwork_rowSelection.png

Note: The context menu features are common to the network and table views, and will therefore be discussed in Section [Context Menu].

5.3.2. Control Panel

See Section [Control panel]. All control panel features are the same as for the 'Phenotype Network' view, except the 'Reset' button. The 'Reset' button is only available in the 'Phenotype Network' view.

5.3.3. Data Table

The table below the control panel contains all the attributes computed for each genotype. Rows correspond to genotypes, and columns correspond to attributes. Please note that the set of attributes available in the table depends on the set of analysis types selected at the time of input form submission.

Interactive features supported in the table view are described in the following subsections.

Note: The row context menu features are common to the network and table views, and will therefore be discussed in Section [Context Menu].

5.3.3.1. Node selection

If you click on a row in the table, the corresponding genotype node is highlighted in the network view.

5.3.3.2. Column selection

If you click on a column header, the entire column is selected. Column selection is used in plotting columns values, as described in the sections to follow.

5.3.3.3. Histogram

The relative frequency distribution of values in a column can be visualized as a histogram.

Suppose we would like to view the distribution of ‘Evolvability' across all genotypes in a genotype network. We can do so by following these steps:

  1. Scroll horizontally to the ‘Evolvability’ column.
  2. Right click on the column header.
  3. Select ‘Histogram’ from the context menu. The required relative frequency histogram appears in the ‘Charts View’.

histogram_evolvability_genotypeNetwork_1.png

histogram_evolvability_genotypeNetwork_2.png

Note: In case the browser window does not automatically scroll down to the ‘Charts View’, you can manually scroll to the bottom of the browser window to locate the ‘Charts View’.

5.3.3.4. Correlate

This option is used to generate a scatter plot of two columns.

Suppose we would like to get a rough idea of the relation between ‘Score’ and ‘Robustness’ over all the genotypes in the genotype network. We can do so by following these steps:

  1. Deselect any columns that are already selected.
  2. Select the ‘Score’ column by clicking on the corresponding column header.
  3. Select the ‘Robustness’ column by clicking on the corresponding column header.
  4. Press ‘Correlate’. The scatter plot appears in the ‘Charts View’.

genotypeNetwork_ScoreRobustness_corr_table.png

genotypeNetwork_ScoreRobustness_corr_chart.png

Note: In case the browser window does not automatically scroll down to the ‘Charts View’, you can manually scroll to the bottom of the browser window to locate the ‘Charts View’.

5.3.4. Context Menu

In order to enable the context menu, right click on a node in the network view, or the corresponding row in the table.

contextMenu_genotypeNetwork.png

contextMenu_genotypeNetwork_table.png

The following subsections describe the various options available via the context menu.

Note: Availability of certain options is dependent on the selected analysis types. Please visit the Genonets Server Learn page for further details.

5.3.4.1. Evolvability target sets

This option highlights the genotype sets (in the 'Phenotype Network' view), each of which contains at least one genotype to which the selected genotype can evolve. Hovering the mouse cursor over a highlighted genotype set displays the tooltip with the following information:

evoTargetSets_1.png

evoTargetSets_2.png

5.3.4.2. Overlap target sets

This option highlights the genotype sets (in the 'Phenotype Network' view) that also contain the selected genotype.

overlapTargets_1.png

overlapTargets_2.png

5.3.4.3. Neighborhood

The neighborhood of a genotype is defined as all genotypes in the same genotype network that differ from it by a single mutation. This option highlights the neighborhood of the selected genotype.

neighborhood_genotypeNetwork_1.png

neighborhood_genotypeNetwork_2.png

5.3.4.4. Epistasis types: bar plot

This option opens the ‘Charts View’ and displays a bar plot, depicting the percentages of different types of epistasis observed in squares that include the selected genotype.

epistasis_barPlot_1.png

epistasis_barPlot_2.png

5.3.4.5. Path Epistasis

This option opens the 'Path epistasis' plot in the 'Charts View'.

The path epistasis plot shows, in what percentage an accessible mutational path would encounter different types of epistasis (i.e., magnitude, simple sign, reciprocal sign) from the selected genotype to the genotype with the highest score (a.k.a Summit). If there are multiple paths between the selected node and the summit, percentages are based on averaged counts over all paths.

Let us take a look the path epistasis plot for the genotype depicted in figure below.

genotypeNetwork_pathEpistasis_1.png

genotypeNetwork_pathEpistasis_2.png

On the x-axis, we can see that the selected genotype is 2 mutations away from the summit. If the selected genotype were to evolve into the summit genotype one mutation per step, it would not encounter any amount of reciprocal sign epistasis; and slightly increasing amounts of simple sign epistasis as it gets closer to the summit. We can see that the overall path would be primarily dominated by a combination of no epistasis and decreasing amounts of magnitude epistasis as it gets closer to the summit.

Please note that in this case, we are again viewing the genotype network not as a neutral network, but rather as a landscape where the peaks are determined by genotypes with higher score values.

5.3.4.6. Paths to summit

This option highlights all available accessible mutational paths from the selected node to the summit.

genotypeNetwork_pathsToSummit_1.png

genotypeNetwork_pathsToSummit_2.png

5.3.4.7. Highlight in landscape view

This option opens the 'Landscape View' and highlights the selected node in the landscape layout.

See Section [Landscape View] for details on the 'Landscape View'.

5.3.4.8. Squares: All

This option opens the 'Squares View' and displays all the squares that contain the selected genotype.

See Section [Squares View] for in-depth coverage of the 'Squares View'.

5.3.4.9. Squares: No epistasis

This option opens the 'Squares View' and displays the squares that contain the selected genotype and exhibit no epistasis.

See Section [Squares View] for in-depth coverage of the 'Squares View'.

5.3.4.10. Squares: Magnitude epistasis

This option opens the 'Squares View' and displays the squares that contain the selected genotype and exhibit magnitude epistasis.

See Section [Squares View] for in-depth coverage of the 'Squares View'.

5.3.4.11. Squares: Simple sign epistasis

This option opens the 'Squares View' and displays the squares that contain the selected genotype and exhibit simple sign epistasis.

See Section [Squares View] for in-depth coverage of the 'Squares View'.

5.3.4.12. Squares: Reciprocal sign epistasis

This option opens the 'Squares View' and displays the squares that contain the selected genotype and exhibit reciprocal sign epistasis.

See Section [Squares View] for in-depth coverage of the 'Squares View'.

5.4. Comparison View

The comparison view is designed to facilitate the side-by-side comparison of two genotype networks. For instructions on how to open the 'Comparison View', see Section [Compare to].

The features available in this view are a subset of the features available in the main 'Genotype Network' view. In the following subsections, we present only the differences between features in this view and the main 'Genotype Network' view.

5.4.1. Context menu

The context menu options are available in the network visualization via right-click on a node, and in the table via right-click on a row. Of the options available in the context menu, the following provide the same functions as their counterparts in the main 'Genotype Network' view:

The options unique to this view are described in the following subsections.

5.4.1.1. Evolvability target genotypes

This option highlights the genotypes in the other genotype network to which the selected genotype can evolve.

In figure below, we can see a selected node in ‘Ascl2’, and the evolvability target genotype highlighted in ‘Mafb’.

comparison_evolvabilityTargets_1.png

comparison_evolvabilityTargets_2.png

5.4.1.2. Overlapping genotypes

If the selected genotype exists in the other genotype network as well, it is highlighted. In addition, all the other genotypes that are common to both genotype networks are highlighted.

In the figure below, we can see the genotype selected in 'Mafb', highlighted in 'Foxa2'. Moreover, all the other genotypes shared between the two networks are highlighted.

comparison_overlapTargets_1.png

comparison_overlapTargets_2.png

5.4.2. Histogram

The histogram feature in the ‘Comparison View’ is similar to the histogram feature in the ‘Genotype Network’ view, as described in Section [Histogram].

The histogram in the ‘Comparison View’ has the added feature that it contains the distribution for the selected attribute for both the genotype networks being compared. The figure below is an example.

comparisonView_histogram.png

5.5. Squares View

A square in a genotype network is a subgraph with the following properties:

  1. Transitive closure, i.e., there is a path from each node to every other node.
  2. Each node has exactly two neighbors.
  3. Each node is two mutations away from exactly one other node, and no two nodes share such a 2-neighbor. This property follows from properties 1 and 2.

Squares are used to compute epistasis. Thus, we only consider epistasis between pairs of mutations. In this analysis, the genotype network is viewed as an adaptive landscape, where the score associated with each genotype is considered as the quantitative phenotype.

The ‘Squares View’ facilitates the visualization of squares for a genotype network. It is possible to filter the squares based on epistasis type, and/or a member genotype.

5.5.1. General interactive features

The following subsections describe features that remain available regardless of whether the view is triggered from the 'Phenotype Network' or from the 'Genotype Network'.

phenotypeNetwork_squares.png

squaresView_left_pane.png

The figure shows the 'Squares View' enabled via the 'Squares: Reciprocal sign epistasis' context menu option for the 'Foxa2' node in the 'Phenotype Network'. All squares in the 'Foxa2' genotype network that exhibit reciprocal sign epistasis are displayed in the left hand side panel.

5.5.1.1. Square selection

Clicking on any of the nodes in one of the squares results in the following:

squaresView_both_panes.png

genotypeNetwork_square.png

landscapeView_square.png

5.5.1.2. Node hover

In either of the left and right panels, hovering the mouse cursor over a node displays tooltip text with the following information:

5.5.1.3. Edge hover

In the right hand side panel, hovering the mouse cursor over an edge displays tooltip text with the following information:

5.5.2. Node filter

The node filter is automatically applied when the 'Squares View' is triggered from the context menu available in the 'Genotype Network' view. Application of this filter implies that only those squares are shown that include the source node (i.e., the node for which the 'Squares View' was triggered). Please note that in this case, the source node is highlighted in each square.

genotypeNetwork_epistasis_square.png

squaresView_nodeFilter.png

5.6. Landscape View

This view facilitates the visualization of the genotype network as an adaptive landscape. The concentric circle layout is based on the following properties:

The following subsections describe the various features available in this view.

5.6.1. Pan

It is possible to move the entire network in any direction. In order to move the network,

  1. Press and hold the left mouse button anywhere on the canvas in the 'Landscape View'.
  2. Move the mouse cursor. You'll notice that the entire network moves with the cursor.

5.6.2. Zoom

Use the mouse wheel to zoom in and out of the network in the 'Landscape View'.

5.6.3. Node hover

Hovering the mouse cursor over a node displays tooltip text with the following information:

landscapeView_hover.png

5.6.4. Node selection

A node can be selected by clicking on it. This highlights the node.

5.6.5. Context menu

The context menu options are available via right-click on a node. Of the options available in the context menu, the following provide the functions similar to those provided by their counterparts in the main 'Genotype Network' view:

landscapeView_paths_1.png

landscapeView_paths_2.png

lanscapeView_neighborhood_1.png

lanscapeView_neighborhood_2.png

The context menu options unique to the 'Landscape View' are described in the following subsections.

5.6.5.1. Reset

This option resets node color to the value determined by the layout algorithm.

This can be useful when a node has been selected by the user, or highlighted as part of a square, etc., and the user would like the default node color to be restored.

5.6.5.2. Highlight in main view

This option marks the node as selected in the 'Genotype Network' view.

5.7. Charts View

The 'Charts View' displays the various types of charts triggered from the different views.

5.7.1. Tooltips

Each bubble in line and scatter plots, and each bar in histograms and bar plots, supports tooltip text. The tooltip can be triggered by hovering the mouse cursor over the bubble or bar. The information provided in the tooltip text varies depending on the plot type, as well the data being plotted.


[1] Michael F Berger et al. “Compact, universal DNA microarrays to comprehensively determine transcription-factor binding site specificities”. Nature Biotechnology 24, 1429 - 1435 (2006).

[2] Gwenael Badis et al. 'Diversity and Complexity in DNA Recognition by Transcription Factors'. Science 26 June 2009: 324 (5935), 1720-1723.

[3] Joshua L. Payne, Andreas Wagner. The Robustness and Evolvability of Transcription Factor Binding Sites. 343 (6173), pp.875-877 (2014).