Mercurial > repos > dereeper > cytoscape
annotate Cytoscape.pl @ 0:e3beb33f88f0 draft
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
author | dereeper |
---|---|
date | Tue, 14 Aug 2018 08:02:10 -0400 |
parents | |
children | 0e43c52e2449 |
rev | line source |
---|---|
0
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
1 #!/usr/bin/perl |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
2 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
3 use strict; |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
4 #use Switch; |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
5 use Getopt::Long; |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
6 use Bio::SeqIO; |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
7 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
8 use Cwd; |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
9 my $dir = getcwd; |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
10 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
11 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
12 my $usage = qq~Usage:$0 <args> [<opts>] |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
13 where <args> are: |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
14 -i, --input <input> |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
15 -h, --html <html_output> |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
16 ~; |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
17 $usage .= "\n"; |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
18 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
19 my ($infile,$htmlout); |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
20 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
21 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
22 GetOptions( |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
23 "input=s" => \$infile, |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
24 "html=s" => \$htmlout, |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
25 ); |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
26 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
27 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
28 die $usage |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
29 if ( !$infile); |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
30 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
31 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
32 my $datain = ""; |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
33 open(I,$infile); |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
34 while(<I>){ |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
35 my $line = $_; |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
36 $datain.=$line; |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
37 } |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
38 close(I); |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
39 chomp($datain);chomp($datain); |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
40 # remove brackets at the beginning and end of JSON |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
41 my $new_datain = substr($datain,1,length($datain)-2); |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
42 $datain = $new_datain; |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
43 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
44 my @colors = ("#ed292a","#ed292a","#82ABA0","#2255a6","#6ebe43","#e76599","#662e91","#c180ff","#ea8b2f","#fff100","#666666","#01ffff","#bfbfbf","#2ac966","#666666"); |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
45 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
46 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
47 my $pie_block = ""; |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
48 for (my $i = 0; $i <= scalar @colors; $i++){ |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
49 $pie_block .= "'pie-$i-background-color': '$colors[$i]',\n"; |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
50 $pie_block .= "'pie-$i-background-size': 'mapData(group$i, 0, 10, 0, 100)',\n"; |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
51 } |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
52 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
53 open(HTML_CYTOSCAPE,">$htmlout"); |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
54 my $html = qq~<!DOCTYPE html> |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
55 <html><head> |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
56 <meta http-equiv="content-type" content="text/html; charset=UTF-8"> |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
57 <link href="http://sniplay.southgreen.fr/cytoscape/Pie_style/style.css" rel="stylesheet"> |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
58 <meta charset="utf-8"> |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
59 <meta name="viewport" content="user-scalable=no, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, minimal-ui"> |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
60 <title>Pie style</title> |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
61 <script src="http://sniplay.southgreen.fr/cytoscape/Pie_style/jquery.js"></script> |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
62 <script src="http://sniplay.southgreen.fr/cytoscape/Pie_style/cytoscape.js"></script> |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
63 <script type="text/javascript"> |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
64 \$(function(){ // on dom ready |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
65 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
66 \$('#cy').cytoscape({ |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
67 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
68 style: cytoscape.stylesheet() |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
69 .selector(':selected') |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
70 .css({ |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
71 'background-color': 'black', |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
72 'line-color': 'black', |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
73 'opacity': 1 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
74 }) |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
75 .selector('.faded') |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
76 .css({ |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
77 'opacity': 0.25, |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
78 'text-opacity': 0 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
79 }) |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
80 .selector('edge') |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
81 .css({ |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
82 'width': 1, |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
83 'line-color': 'black', |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
84 }) |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
85 .selector('node') |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
86 .css({ |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
87 'width': 'mapData(width, 0, 10, 0, 100)', |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
88 'height': 'mapData(width, 0, 10, 0, 100)', |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
89 'content': 'data(id)', |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
90 'pie-size': '98%', |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
91 $pie_block |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
92 }), |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
93 $datain |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
94 , |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
95 layout: { |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
96 name: 'cose', |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
97 padding: 10 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
98 }, |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
99 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
100 ready: function(){ |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
101 window.cy = this; |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
102 } |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
103 }); |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
104 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
105 }); |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
106 |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
107 </script> |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
108 </head> |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
109 <body> |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
110 <div id="cy"> |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
111 </div> |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
112 ~; |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
113 print HTML_CYTOSCAPE $html; |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
114 close(HTML_CYTOSCAPE); |
e3beb33f88f0
planemo upload commit 11382afe87364aaafb19973470d5066229a6e34f
dereeper
parents:
diff
changeset
|
115 |