Contents
- Important Notice
- Preparation
- Computing relationships based on root-related data
- Computing relationships based on all array data
- Comparing graphs
This is a step-by-step running script. All data mentioned in this page are available and users can try all commands one by one. For detailed description of each program, please refer the Command line manual.
- This running script example is to give a practical example that uses graph-level operations of Maccu to reduce network complexity, and thus obtains tissue-specific co-expression networks. Please refer here for an example with all functionalities of Maccu.
- The data files 797genes.txt, t01.txt, t06.txt, and t24.txt were made by Dr. Wolfgang Schmidt's lab. Please use them only for this example.
System Requirement:
- Java Environment: Be sure that you have Java Runtime Environment (JRE) installed in your computer. If not, JRE can be downloaded from java.sun.com. In case that you don't know how to download/install JRE, please contace your technical support.
- The Graphviz program is required for making pictures, and it is available at http://www.graphviz.org/.
- In practice, we found that 1.4GB memory was needed for some programs. So we suggest to use a computer with at least 2GB memory to run this tool kit.
For this example:
We need only the extracted files, the zip files are no longer required. Copy all these files:
- ATH1_All_RMA.tdt
- ATH1_Root_ALL.tdt
- ATH1_ProbeLocusMap.TXT: mapping between ATH1 probes and TAIR loci
- geneSymbols.txt: labels of loci
- 797genes.txt: input gene list of Maccu
- t01.txt, t06.txt, and t24.txt: fold-change information of three time points
- maccu.jar
to your working directory (in this example it is D:\example).
This command computes relationships between all pairs of input genes (given in file 797genes.txt) based on root-related data. The RMA-normalized expression levels are stored in file ATH1_Root_ALL.tdt. File ATH1_ProbeLocusMap.TXT records the mapping from ATH1 probes to locus IDs. The threshold for defining co-expression relationship is set to 0.8. The computed relationships are stored in output file root0.8.graph (see here for its format).
D:\example>java -Xmx1400M -classpath maccu.jar maccu.RelationComputer -I ATH1_Root_ALL.tdt -CF 0.8 -O root0.8 -P 797genes.txt -assign ATH1_ProbeLocusMap.TXT
program: RelationComputer
expression filename (-I): ATH1_Root_ALL.tdt
probe assignment filename (-assign): ATH1_ProbeLocusMap.TXT
correlation filename (-C): null
output prefix (-O): root0.8
probe filename (-P): 797genes.txt
number filer (-NF): 8
correl filer (-CF): 0.8
by locus (-L): true
D:\example>
There are two steps for generating visualization of a .graph file: (1) attaching information and (2) making image file. The following command combines information from root0.8.graph, geneSymbols.txt and t01.txt, and then produces root0.8t01.dot for drawing picture using the Graphviz program. Note that file geneSymbols.txt assigns names of loci. Note also that file t01.txt specifies intensity fold-changes of graph nodes.
D:\example>java -Xmx1400M -classpath maccu.jar maccu.GraphMakeUp -I root0.8.graph -O root0.8t01.dot -label geneSymbols.txt -fold t01.txt
program: GraphMakeUp
input graph (-I): root0.8.graph
output filename (-O): root0.8t01.dot
label filename (-label): geneSymbols.txt
fold change filename (-fold): t01.txt
coloring list (-C): {}
font 1 (-font1): 12
font 2 (-font2): 8
D:\example>
The following command translates root0.8t01.dot into picture root0.8t01.png using the Graphviz twopi module.
D:\example>twopi -Goutputorder=edgesfirst -Goverlap=vpsc -Granksep=2 -Gratio=auto -Tpng -o root0.8t01.png root0.8t01.dot
D:\example>
In a similar way, we may generate visualization of the same .graph file with fold-change information of different time points.
The following command compute relationships between all pairs of genes in the file 797genes.txt based on all array data and store co-expression clustering results in all0.7.graph.
D:\example>java -Xmx1400M -classpath maccu.jar maccu.RelationComputer -I ATH1_All_RMA.tdt -CF 0.7 -O all0.7 -P 797genes.txt -assign ATH1_ProbeLocusMap.TXT
program: RelationComputer
expression filename (-I): ATH1_All_RMA.tdt
probe assignment filename (-assign): ATH1_ProbeLocusMap.TXT
correlation filename (-C): null
output prefix (-O): all0.7
probe filename (-P): 797genes.txt
number filer (-NF): 8
correl filer (-CF): 0.7
by locus (-L): true
D:\example>
We are not going to do any visualization for this .graph file because it is for doing graph-level operation only.
Because the size of the major cluster in root08.graph is too large, we use the following concept to retain root-specific edges.
|
|
edge to be removed
|
edge to be retained
|
That is, an edge (a gene pair) will be retained if it has stronger correlation based on root-related data and weaker correlation based on all-array data. To do this, we apply the following command of GraphAdjust. This command reads root0.8.graph and removes all edges that also appear in all0.7.graph. The final .graph file of this computation will be specific-all.graph. Note that sizes of clusters will be reported, and it could be found that the huge major cluster in root0.8.graph is split into three smaller clusters of sizes 61, 50, and 17.
D:\example>java -Xmx1400M -classpath maccu.jar maccu.GraphAdjust -I root0.8.graph -remove all0.7.graph -O specific
program: GraphAdjust
input graph (-I): root0.8.graph
output prefix (-O): specific
remove node list (-RN): []
remove edge list (-RE): []
remove graph list (-remove): [all0.7.graph]
retain graph list (-retain): []
degree filter (-D): 0
cluster-size filter (-S): 1
cluster 0, size: 61
cluster 1, size: 50
cluster 2, size: 17
cluster 3, size: 5
(deleted)
cluster 24, size: 2
D:\example>
Again, the following commands and similar ones make visualization of time points for specific-all.graph. If needed, manipulate specific-<X>.graph for <X>-th largest cluster.
D:\example>java -Xmx1400M -classpath maccu.jar maccu.GraphMakeUp -I specific-all.graph -O specific_t01.dot -label geneSymbols.txt -fold t01.txt
program: GraphMakeUp
input graph (-I): specific-all.graph
output filename (-O): specific_t01.dot
label filename (-label): geneSymbols.txt
fold change filename (-fold): t01.txt
coloring list (-C): {}
font 1 (-font1): 12
font 2 (-font2): 8
D:\example>twopi -Goutputorder=edgesfirst -Goverlap=vpsc -Granksep=2 -Gratio=auto -Tpng -o specific_t01.png specific_t01.dot
D:\example>