Step 1: Installation

  1. Download and install Cytoscape. Please make sure you have Java 1.6+ installed and configured.
  2. To install the TiCoNE plug-in with Cytoscape 3 and above, use the Cytoscape App Manager: "Apps → App Manager → Install Apps" and select TiCoNE.
  3. Once the plugin is installed, it should appear in the Apps menu as "TiCoNE".
  4. Further it should appear as "TiCoNE" under Control Panel as seen below:

Step 2: Import network

  1. Download our example network
  2. Click on File → Import → Network.
  3. Select our network file
  4. Choose "Source" and "Target" interaction:
  5. In the advanced options, do not use the first line of the input file as column names:
  6. Once the network is loaded, Cytoscape should automatically apply the preferred layout to get a better representation of the network. If this is not done automatically, do it manually under "Layout → Apply Preferred Layout".
  7. The network should now be visualized similar to this:

Step 3: Import dataset

  1. Download our example data set
  2. Click on File → Import → Table.
  3. Select our dataset file
  4. Load it to unassigned tables, and give it a name such that you can easily identify it later:
  5. In the advanced options, do not use the first line of the input file as column names:
  6. Once the table is loaded, you can select it with the table selector:

Step 4: Setup the input

  1. Use the values as shown on the following picture and leave the remaining settings at their defaults:
    Discretization
    This setting determines how cluster prototypes are discretized. You have to select how many discretization steps you want from 0 to the maximum value of your input dataset (if te maximum values is above 0), and how many discretization steps you want from 0 to the minimum values of your input dataset (If the minimum value is below 0).
    Initial clustering
    In the first iteration TiCoNE uses an existing clustering method to calculate the initial clustering. This clustering can then be refined in later iterations. Here you have to specify the number of clusters you want in the beginning.
  2. Click "Start" to start the clustering.

Step 5: View and analyze results

  1. Now under the Clusters tab you can view your found clusters, and they will be visualized as below:
  2. Each row contains information about one cluster:
    1. A checkbox to select clusters when performing further operations, such as merging of clusters or network enrichment.
    2. Cluster ID
    3. Number of objects assigned to the cluster
    4. The average Pearson correlation of cluster objects and cluster prototype
    5. The average residual sum of squares (RSS) of cluster objects and cluster prototype
    6. A cluster p-value indicating the fit of of the objects to their cluster.
    7. A graph visualizing the cluster, its prototype and its objects.
  3. Note: Since TiCoNE version 1.3.77 p-values are not automatically calculated anymore for each clustering due to performance reasons.

Step 6: Iterations

  1. TiCoNE is based on an iterative optimization procedure to improve a clustering. One can run 1 optimization iteration at a time, or run iterations until convergence, by pressing either the "Do Iteration" or the "Until convergence" button on the Cluster Operations panel". The latter implies that iterations are performed until no change occur in the assignment of objects to clusters (with an upper bound of 100 iterations).
  2. Here, we perform iterations "Until Convergence". This will execute 9 more iterations:
  3. Afterwards, the clusters should look as follows:

Step 7: Cluster p-values

  1. Next, we calculate p-values for our clusters:
  2. After a short while, the cluster p-values are shown next to the cluster graphs (these values differ each time due to the random nature of empirical p-values):

Step 8: Delete least-fitting objects

  1. In order to clean up a clustering, TiCoNE provides several operations that can be applied to clusters.
  2. Here, we examplarily delete the least-fitting objects from cluster 7. To this end, we click on the "Delete" button under the graph of cluster 7:
  3. A dialog will ask us, what we want to delete. Here we choose "Least fitting objects":
  4. Now, we are presented with the ten percent least-fitting objects of cluster 7:
  5. We leave the options at their defaults and click on "Delete objects".
  6. The objects are now completely removed from cluster 7 and also the clustering. Thus, these objects will also not be reconsidered in later iterations.

Step 9: Split clusters

  1. Clusters can be split into multiple new clusters. This makes sense if it is apparent that a cluster contains objects that follow multiple distinct time patterns.
  2. Here, we will examplarily split cluster 6 by clicking on its "Split" button:
  3. We are now presented with multiple ways of how to split a cluster:
  4. Here, we select "Based on least similar objects". This implies, that the two least similar objects of the cluster will be the prototypes of two new clusters. The remaining objects of the current cluster will be assigned to the prototype they are more similar to. Furthermore, we choose Magnitude (Euclidean) as the similarity function.
  5. We are now presented with a dialog showing us the old cluster as well as the two new clusters:
  6. You now have the option to save the new clusters (which will remove the old cluster), or discard the new clusters (which will keep the old cluster).
  7. Here, we choose to save the two new clusters and they will be presented to us as shown below:
  8. As seen, the two new clusters are maked with green, where the old cluster is marked with red, indicating that the old cluster will be removed, and the two new clusters will be added, when pressing "Apply changes".

Step 10: Suggest clusters

  1. Clicking "Filter objects" -> "Least fitting objects" in the Cluster Operations panel on the left, you will be presented with a dialog, that shows the least fitting objects across all clusters:
  2. You have the options, to either delete the least fitting objects, or suggest new clusters based on a new clustering of these objects.
  3. The result from suggesting clusters will be presented as below:
  4. You have the option to choose which of the new clusters you want to keep in your clustering when pressing "Save selected clusters".

Step 11: Cluster history

  1. You can also review all your previous steps by clicking on "Show history":
  2. Clicking on "Reset to this iteration" will revert your clustering to the selected state and removes all newer states from the session.

Step 12: Filter clusters

  1. Clusters can be filtered according to their properties. Here, we want to filter them based on cluster p-values.
  2. To this end, we first have to recalculate p-values for our current clusters as described previously.
  3. Now, we enable the cluster filter functionality under the "Cluster Operations" tab by setting the filter settings as follows and clicking "Apply Filter":
  4. After clicking "Apply Filter", clusters that are filtered out are visualized with a shaded background and at the bottom of the cluster table:

Step 13: Network analysis

  1. One can visualize clusters on the network by changing to the "Network Operations" tab and clicking the "Colorize network" button. This will color the nodes of the current network according to their cluster.
  2. Here, we only want to visualize the significant clusters on the network. Thus, after applying the cluster filter (see previous step), we select all non-filtered clusters (or alternatively click on the header of the "Selected" column to select them all).
  3. We then click on "Colorize network" and are presented with a network such as the following:
  4. Further, de novo network enrichment can be performed (a limited version of KeyPathwayMiner is included in TiCoNE).
  5. We leave the cluster selection as it is, i.e. we perform network enrichment only for the significant clusters.
  6. In the "Network Enrichment" panel we need to configure the number of exception nodes, the number of desired results (subnetworks), and whether unmapped nodes should be counted as exception nodes:
  7. After clicking on "Perform", we are presented with the following subnetworks that are enriched in objects of the selected significant clusters:
    For each enriched subnetwork, we are presented with an ID, the number of objects contained in the subnetwork, and its number of exception nodes. Here, exception nodes are those that are not contained in our significant clusters.
  8. One can highlight the nodes contained in a enriched subnetwork, by selecting the subnetwork in the KPM results table:
  9. Further one can extract the union or core (intersection) of a selection of results, using the buttons. This will create a new network, with the corresponding nodes: