#!/usr/bin/perl -w use strict; use CGI qw(:standard); use CGI qw(param); # METABOLIC DISPLAY 2001 # ----------------------------- # Yale Gerstein Bioinformatics : Jimmy Lin # # A program to display metabolic information # and information associated with organisms # the code is very lazy and sloppy, please forgive (it works!) # USER SPECIFICATIONS #my $treename='ribosome'; # name of order #my @treeorder=qw(Mgen Hinf); # specification of order my $input= param("enzyme"); # my @treedata; my @treedata2; my $mi=0; if (!param("enzyme")){ $input="5.3.1.9"; } my $end; my $i; my $infoline; read_matrix("meta-table"); read_matrix2("meta-table2"); locate_enzyme("$input"); print_info("$infoline"); sub print_info { my ($i)=@_; print <Metabolism Display EndOfStart my $hvar = `perl /web/genecensus/header/header.cgi tree`; print "$hvar"; print ""; print "

"; #LEFT FRAME START print ""; #RIGHT FRAME START print ""; print "
"; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print "
"; for (my $m=2;$m<10;$m++){ print "$treedata[$m][1]
"; } print "
"; for (my $m=10;$m<15;$m++){ print "$treedata[$m][1]
"; } print "
"; for (my $m=15;$m<20;$m++){ print "$treedata[$m][1]
"; } print "
"; print "
"; print "
"; print " Pathway View"; print "
"; #LEFT FRAME END print "
"; print "
"; print ""; print ""; print ""; print "
"; print ""; print "ENZYME: $treedata[$i][1] "; # print "(PATHWAY: $treedata[$i][0])"; print ""; print ""; print " $treedata[$i][1]"; print "
"; print "
"; print "FLUX VALUES
"; print "Flux variation (Standard deviation):$treedata2[$i][17]"; print ""; #"; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print "
FluxBSUBECOLHPYLHINFSCER
BSUBECOLHPYLHINFSCER
Normal$treedata[$i][2]$treedata[$i][3]$treedata[$i][4]$treedata[$i][5]$treedata[$i][6]
Absolute$treedata[$i][7]$treedata[$i][8]$treedata[$i][9]$treedata[$i][10]$treedata[$i][11]
Seq ID$treedata[$i][25]$treedata[$i][22]$treedata[$i][24]$treedata[$i][23]$treedata[$i][26]
"; #END TOP TABLE print "
"; print "PERCENTAGE IDENTITY
"; print "Average PID: $treedata2[$i][18]
"; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print "
% IDBSUBECOLHPYLHINFSCER
BSUB1.000$treedata[$i][12]$treedata[$i][15]$treedata[$i][14]$treedata[$i][13]
ECOL$treedata[$i][12]1.000$treedata[$i][18]$treedata[$i][17]$treedata[$i][16]
HPYL$treedata[$i][15]$treedata[$i][14]1.000$treedata[$i][21]$treedata[$i][20]
HINF$treedata[$i][14]$treedata[$i][17]$treedata[$i][16]1.000$treedata[$i][19]
SCER$treedata[$i][13]$treedata[$i][16]$treedata[$i][20]$treedata[$i][19]1.000
"; print "
"; print "EXPRESSION DATA
"; print "Multi-scale Reference: $treedata[$i][27] copies per cell

"; print "Standard Deviation of Expression Change"; print ""; for ($mi=2;$mi<9;$mi++){ print ""; } print ""; for ($mi=2;$mi<9;$mi++){ print ""; } print "
Experiment$treedata2[1][$mi]
STDEV$treedata2[$i][$mi]
"; print "Average of Expression Change"; print ""; for ($mi=9;$mi<17;$mi++){ print ""; } print ""; for ($mi=9;$mi<17;$mi++){ print ""; } print "
Experiment$treedata2[1][$mi]
STDEV$treedata2[$i][$mi]
"; print "
"; print "EXPRESSION TIMEPOINTS
"; print "Mitotic Cell Cycle [normalized transcript level divided by mean value] "; print "link"; print ""; print ""; print ""; print ""; print ""; print ""; print "
0102030405060708090100110120130140150160
$treedata[$i][28]$treedata[$i][29]$treedata[$i][30]$treedata[$i][31]$treedata[$i][32]$treedata[$i][33]$treedata[$i][34]$treedata[$i][35]$treedata[$i][36]$treedata[$i][37]$treedata[$i][38]$treedata[$i][39]$treedata[$i][40]$treedata[$i][41]$treedata[$i][42]$treedata[$i][43]$treedata[$i][44]
"; print "Alpha Factor Arrest Synchronization [log2(ratio of mRNA levels)] "; print "link"; print ""; print ""; print ""; print ""; print ""; print ""; print "
0714212835424956637077849198105112119
$treedata[$i][49]$treedata[$i][50]$treedata[$i][51]$treedata[$i][52]$treedata[$i][53]$treedata[$i][54]$treedata[$i][55]$treedata[$i][56]$treedata[$i][57]$treedata[$i][58]$treedata[$i][59]$treedata[$i][60]$treedata[$i][61]$treedata[$i][62]$treedata[$i][63]$treedata[$i][64]$treedata[$i][65]$treedata[$i][66]
"; print "CDC15 Synchronization [log2(ratio of mRNA levels)] "; print "link"; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print "
103050708090100110120130140150160
$treedata[$i][67]$treedata[$i][68]$treedata[$i][69]$treedata[$i][70]$treedata[$i][71]$treedata[$i][72]$treedata[$i][73]$treedata[$i][74]$treedata[$i][75]$treedata[$i][76]$treedata[$i][77]$treedata[$i][78]$treedata[$i][79]
170180190200210220230240250270290
$treedata[$i][80]$treedata[$i][81]$treedata[$i][82]$treedata[$i][83]$treedata[$i][84]$treedata[$i][85]$treedata[$i][86]$treedata[$i][87]$treedata[$i][88]$treedata[$i][89]$treedata[$i][90]
"; print "CDC28 (Stanford) [log2(ratio of mRNA levels)] "; print ""; print ""; print ""; print ""; print ""; print ""; print "
0102030405060708090100110120130140150160
$treedata[$i][91]$treedata[$i][92]$treedata[$i][93]$treedata[$i][94]$treedata[$i][95]$treedata[$i][96]$treedata[$i][97]$treedata[$i][98]$treedata[$i][99]$treedata[$i][100]$treedata[$i][101]$treedata[$i][102]$treedata[$i][103]$treedata[$i][104]$treedata[$i][105]$treedata[$i][106]$treedata[$i][107]
"; print "Elutration Synchronization [log2(ratio of mRNA levels)] "; print "link"; print ""; print ""; print ""; print ""; print ""; print "
0306090120150180210240270300330360390
$treedata[$i][108]$treedata[$i][109]$treedata[$i][110]$treedata[$i][111]$treedata[$i][112]$treedata[$i][113]$treedata[$i][114]$treedata[$i][115]$treedata[$i][116]$treedata[$i][17]$treedata[$i][101]$treedata[$i][102]$treedata[$i][103]$treedata[$i][104]
"; print "
"; print "
"; print "
"; print ""; #RIGHT FRAME END print ""; #TABLE END print ""; } sub locate_enzyme { my ($name)=@_; $end-=2; for ($i=2; $i<$end; $i++) { # print "$treedata[$i][1]"; if ($input eq $treedata[$i][1]){ # print " BANG!"; $infoline=$i; } # print "\n"; } } sub read_matrix { my ($filename)=@_; open (DATA, "./$filename.txt") or die "cannot open $filename.txt"; my $tree_chunk; my @store_array; my $x=0; my $y=0; while () { $y=0; for $tree_chunk (split()){ # print "$tree_chunk "; $treedata[$x][$y]=$tree_chunk; $y++; } $end=$y; # print "\n"; $x++; } close DATA; } sub read_matrix2 { my ($filename)=@_; open (DATA, "./$filename.txt") or die "cannot open $filename.txt"; my $tree_chunk; my @store_array; my $x=0; my $y=0; while () { $y=0; for $tree_chunk (split()){ # print "$tree_chunk "; $treedata2[$x][$y]=$tree_chunk; $y++; } $end=$y; # print "\n"; $x++; } close DATA; }