Mercurial > repos > big-tiandm > sirna_plant
diff html.pl @ 15:0e4b6b0c6e9d draft
Uploaded
author | big-tiandm |
---|---|
date | Wed, 29 Oct 2014 04:20:16 -0400 |
parents | 07745c0958dd |
children | e0884a4b996b |
line wrap: on
line diff
--- a/html.pl Wed Oct 29 04:19:59 2014 -0400 +++ b/html.pl Wed Oct 29 04:20:16 2014 -0400 @@ -25,7 +25,11 @@ $genomepath=<IN>; chomp $genomepath; $clusterpath=<IN>; chomp $clusterpath; $annotatepath=<IN>; chomp $annotatepath; -$degpath=<IN>; chomp $degpath; +my $deg_tag=1; +if(eof){$deg_tag=0;} +else{ + $degpath=<IN>; chomp $degpath; +} close IN; my @tmp=split/\//,$prepath; $predir=$tmp[-1]; @@ -37,8 +41,8 @@ $clusterdir=$tmp[-1]; @tmp=split/\//,$annotatepath; $annotatedir=$tmp[-1]; -@tmp=split/\//,$degpath; -$degdir=$tmp[-1]; +#@tmp=split/\//,$degpath; +#$degdir=$tmp[-1]; my $dir=dirname($opts{'o'}); @@ -479,12 +483,19 @@ $repeat[$j]=0; $nat[$j]=0; } + +my $class_anno=6; open ANNO,"<$annotate"; while (my $aline=<ANNO>) { - next if($aline=~/^\#/); chomp $aline; my @temp=split/\t/,$aline; - for (my $i=3+@marks+6;$i<@temp;$i++) { + if($aline=~/^\#/){ + if (@temp != 10+@marks) { + $class_anno=0; + } + next; + } + for (my $i=3+@marks+$class_anno;$i<@temp;$i++) { my @posit=split/\;/,$temp[$i]; for (my $j=0;$j<@marks ;$j++) { if ($temp[3+$j]>0) { @@ -497,28 +508,30 @@ } } } - for (my $j=0;$j<@marks ;$j++) { - if ($temp[3+$j]>0) { - if ($temp[6] eq "phase") { - $phase[$j]++; - } - if ($temp[7] eq "long") { - $long[$j]++; - } - if ($temp[8] ne "\/") { - $repeat[$j]++; - my @rr=split/\;/,$temp[8]; - foreach (@rr) { - $repeat{$_}[$j]++; + if ($class_anno) { + for (my $j=0;$j<@marks ;$j++) { + if ($temp[3+$j]>0) { + if ($temp[6] eq "phase") { + $phase[$j]++; + } + if ($temp[7] eq "long") { + $long[$j]++; } - } - if ($temp[9] ne "\/") { - $nat[$j]++; - my @nn1=split/\;/,$temp[9]; - my @nn2=split/\;/,$temp[10]; - for (my $k=0;$k<@nn1 ;$k++) { - $nat1{$nn1[$k]}[$j]++; - $nat2{$nn2[$k]}[$j]++; + if ($temp[8] ne "\/") { + $repeat[$j]++; + my @rr=split/\;/,$temp[8]; + foreach (@rr) { + $repeat{$_}[$j]++; + } + } + if ($temp[9] ne "\/") { + $nat[$j]++; + my @nn1=split/\;/,$temp[9]; + my @nn2=split/\;/,$temp[10]; + for (my $k=0;$k<@nn1 ;$k++) { + $nat1{$nn1[$k]}[$j]++; + $nat2{$nn2[$k]}[$j]++; + } } } } @@ -551,176 +564,188 @@ One cluster mybe annotate to multiple genes<br /> "; -print OUT "<h3>5.2 Cluster source mechanism annotate</h3> -<table border=\"1\"> -<tr align=\"center\"> -<th align=\"left\">clusters number</th>\n -"; +if ($class_anno) { + print OUT "<h3>5.2 Cluster source mechanism annotate</h3> + <table border=\"1\"> + <tr align=\"center\"> + <th align=\"left\">clusters number</th>\n + "; -foreach (@marks) { - print OUT "<th> $_ </th>\n"; -} -print OUT "</tr> -<tr align=\"center\"> -<th align=\"left\">Phase</th>\n -"; -foreach (@phase) { - print OUT "<td> $_ </td>\n"; -} + foreach (@marks) { + print OUT "<th> $_ </th>\n"; + } + print OUT "</tr> + <tr align=\"center\"> + <th align=\"left\">Phase</th>\n + "; + foreach (@phase) { + print OUT "<td> $_ </td>\n"; + } -print OUT "</tr> -<tr align=\"center\"> -<th align=\"left\">Long</th>\n -"; -foreach (@long) { - print OUT "<td> $_ </td>\n"; -} + print OUT "</tr> + <tr align=\"center\"> + <th align=\"left\">Long</th>\n + "; + foreach (@long) { + print OUT "<td> $_ </td>\n"; + } -print OUT "</tr> -<tr align=\"center\"> -<th align=\"left\">Repeat</th>\n -"; -foreach (@repeat) { - print OUT "<td> $_ </td>\n"; -} + print OUT "</tr> + <tr align=\"center\"> + <th align=\"left\">Repeat</th>\n + "; + foreach (@repeat) { + print OUT "<td> $_ </td>\n"; + } -print OUT "</tr> -<tr align=\"center\"> -<th align=\"left\">Nat</th>\n -"; -foreach (@nat) { - print OUT "<td> $_ </td>\n"; -} -print OUT "</tr>\n</table>"; + print OUT "</tr> + <tr align=\"center\"> + <th align=\"left\">Nat</th>\n + "; + foreach (@nat) { + print OUT "<td> $_ </td>\n"; + } + print OUT "</tr>\n</table>"; -print OUT "<p> -Repeat subclass annotate: -"; + print OUT "<p> + Repeat subclass annotate: + "; -print OUT "<table border=\"1\"> -<tr align=\"center\"> -<th align=\"left\">Repeat subclass</th>\n -"; -foreach (@marks) { - print OUT "<th> $_ </th>\n"; -} + print OUT "<table border=\"1\"> + <tr align=\"center\"> + <th align=\"left\">Repeat subclass</th>\n + "; + foreach (@marks) { + print OUT "<th> $_ </th>\n"; + } -foreach my $key (sort keys %repeat) { - print OUT "</tr> - <tr align=\"center\"> - <th align=\"left\">$key</th> - "; - for (my $i=0;$i<@marks ;$i++) { - if (defined($repeat{$key}[$i])) { - print OUT "<td> $repeat{$key}[$i] </td>\n"; + foreach my $key (sort keys %repeat) { + print OUT "</tr> + <tr align=\"center\"> + <th align=\"left\">$key</th> + "; + for (my $i=0;$i<@marks ;$i++) { + if (defined($repeat{$key}[$i])) { + print OUT "<td> $repeat{$key}[$i] </td>\n"; + } + else{print OUT "<td> 0 </td>\n";} } - else{print OUT "<td> 0 </td>\n";} } -} -print OUT "</tr>\n</table>"; + print OUT "</tr>\n</table>"; -print OUT "<p> -Nat subclass1 annotate: -"; + print OUT "<p> + Nat subclass1 annotate: + "; -print OUT "<table border=\"1\"> -<tr align=\"center\"> -<th align=\"left\">Nat subclass1</th>\n -"; -foreach (@marks) { - print OUT "<th> $_ </th>\n"; -} -foreach my $key (sort keys %nat1) { - print OUT "</tr> - <tr align=\"center\"> - <th align=\"left\">$key</th> + print OUT "<table border=\"1\"> + <tr align=\"center\"> + <th align=\"left\">Nat subclass1</th>\n "; - for (my $i=0;$i<@marks ;$i++) { - if (defined($nat1{$key}[$i])) { - print OUT "<td> $nat1{$key}[$i] </td>\n"; + foreach (@marks) { + print OUT "<th> $_ </th>\n"; + } + foreach my $key (sort keys %nat1) { + print OUT "</tr> + <tr align=\"center\"> + <th align=\"left\">$key</th> + "; + for (my $i=0;$i<@marks ;$i++) { + if (defined($nat1{$key}[$i])) { + print OUT "<td> $nat1{$key}[$i] </td>\n"; + } + else{print OUT "<td> 0 </td>\n";} } - else{print OUT "<td> 0 </td>\n";} } -} -print OUT "</tr>\n</table>"; + print OUT "</tr>\n</table>"; + + print OUT "<p> + Nat subclass2 annotate: + "; -print OUT "<p> -Nat subclass2 annotate: -"; - -print OUT "<table border=\"1\"> -<tr align=\"center\"> -<th align=\"left\">Nat subclass2</th>\n -"; -foreach (@marks) { - print OUT "<th> $_ </th>\n"; + print OUT "<table border=\"1\"> + <tr align=\"center\"> + <th align=\"left\">Nat subclass2</th>\n + "; + foreach (@marks) { + print OUT "<th> $_ </th>\n"; + } + foreach my $key (sort keys %nat2) { + print OUT "</tr> + <tr align=\"center\"> + <th align=\"left\">$key</th> + "; + for (my $i=0;$i<@marks ;$i++) { + if (defined($nat2{$key}[$i])) { + print OUT "<td> $nat2{$key}[$i] </td>\n"; + } + else{print OUT "<td> 0 </td>\n";} + } + } + print OUT "</tr>\n</table>"; + print OUT "<p> + Note:<br /> + One cluster mybe annotate to multiple repeats or nats<br /> + "; } -foreach my $key (sort keys %nat2) { - print OUT "</tr> - <tr align=\"center\"> - <th align=\"left\">$key</th> - "; - for (my $i=0;$i<@marks ;$i++) { - if (defined($nat2{$key}[$i])) { - print OUT "<td> $nat2{$key}[$i] </td>\n"; - } - else{print OUT "<td> 0 </td>\n";} - } +else { + print OUT "<h3>5.2 Cluster source mechanism annotate</h3> + <br />Do not do source mechanism annotate <br />"; + } -print OUT "</tr>\n</table>"; -print OUT "<p> -Note:<br /> -One cluster mybe annotate to multiple repeats or nats<br /> -"; -my $deg_file=`ls $degpath`; -chomp $deg_file; -my @deg_file=split/\n/,$deg_file; -my %deg; -foreach (@deg_file) { - my $output="$degpath/$_/output_score.txt"; - open IN,"<$output"; - $deg{$_}[0]=0; - $deg{$_}[1]=0; - $deg{$_}[2]=0; - while (my $aline=<IN>) { - next if ($aline=~/^\"/); - chomp $aline; - my @temp=split/\t/,$aline; - if ($temp[9] eq "TRUE") { - $deg{$_}[0]++; - if ($temp[4] >0) { - $deg{$_}[1]++; - } - if ($temp[4] <0) { - $deg{$_}[2]++; +if ($deg_tag) { + my $deg_file=`ls $degpath`; + chomp $deg_file; + my @deg_file=split/\n/,$deg_file; + my %deg; + foreach (@deg_file) { + my $output="$degpath/$_/output_score.txt"; + open IN,"<$output"; + $deg{$_}[0]=0; + $deg{$_}[1]=0; + $deg{$_}[2]=0; + while (my $aline=<IN>) { + next if ($aline=~/^\"/); + chomp $aline; + my @temp=split/\t/,$aline; + if ($temp[9] eq "TRUE") { + $deg{$_}[0]++; + if ($temp[4] >0) { + $deg{$_}[1]++; + } + if ($temp[4] <0) { + $deg{$_}[2]++; + } } } + close IN; } - close IN; -} + print OUT "<h2>6. DEG</h2> + <table border=\"1\"> + <tr align=\"center\"> + <th align=\"left\">Genes number</th>\n + <th> DEG </th>\n + <th> UP </th>\n + <th> DOWN </th>\n + "; -print OUT "<h2>6. DEG</h2> -<table border=\"1\"> -<tr align=\"center\"> -<th align=\"left\">Genes number</th>\n -<th> DEG </th>\n -<th> UP </th>\n -<th> DOWN </th>\n -"; - -foreach my $key (sort keys %deg) { - print OUT "</tr> - <tr align=\"center\"> - <th align=\"left\">$key</th> - "; - for (my $i=0;$i<@{$deg{$key}} ;$i++) { - print OUT "<td> $deg{$key}[$i] </td>\n"; + foreach my $key (sort keys %deg) { + print OUT "</tr> + <tr align=\"center\"> + <th align=\"left\">$key</th> + "; + for (my $i=0;$i<@{$deg{$key}} ;$i++) { + print OUT "<td> $deg{$key}[$i] </td>\n"; + } } + print OUT "</tr>\n</table>"; } -print OUT "</tr>\n</table>"; +else{ + print OUT "<h2>6. DEG</h2> + <br />Do not do DE clusters <br />"; +} print OUT " </BODY>