1FREND(1) User Contributed Perl Documentation FREND(1)
2
3
4
6 frend.pl -- Render a Bio::Graphics Feature File on the web
7
9 http://your.host.com/cgi-bin/frend.pl
10
12 The frend.pl script is a thin front end around the Bio::Graphics
13 module. It accepts a list of files containing sequence (protein,
14 nucleotide) feature coordinates from the file(s) listed on the command
15 line or on standard input, renders them, and produces a PNG file on
16 standard output.
17
19 Copy this script into your web site's cgi-bin directory. Name it
20 whatever you want.
21
23 This script accepts and processes sequence annotations in a simple tab-
24 delimited format or in GFF format.
25
26 The feature file format has a configuration section and a data section.
27 The configuration section sets up the size and overall properties of
28 the image, and the data section gives the feature data itself.
29
30 Configuration Section
31 If not provided, this scripts generates a reasonable default
32 configuration section for you, so you do not need to provide a
33 configuration section to get a reasonable image. However, to tune the
34 appearance of the image, you will probably want to tweak the
35 configuration. Here is an excerpt from the configuration section:
36
37 # example file
38 [general]
39 bases = -1000..21000
40 height = 12
41
42 [EST]
43 glyph = segments
44 bgcolor= yellow
45 connector = solid
46 height = 5
47
48 [FGENES]
49 glyph = transcript2
50 bgcolor = green
51 description = 1
52
53 The configuration section is divided into a set of sections, each one
54 labeled with a [section title]. The [general] section specifies global
55 options for the entire image. Other sections apply to particular
56 feature types. In the example above, the configuration in the [EST]
57 section applies to features labeled as ESTs, while the configuration in
58 the [FGENES] section applies to features labeled as predictions from
59 the FGENES gene prediction program.
60
61 Inside each section is a series of name=value pairs, where the name is
62 the name of an option to set. You can put whitespace around the = sign
63 to make it more readable, or even use a colon (:) if you prefer. The
64 following option names are recognized:
65
66 Option Value Example
67 ------ ----- -------
68
69 bases Min & max of the sequence range (bp) 1200..60000
70 width width of the image (pixels) 600
71 height Height of each graphical element (pixels) 10
72 glyph Style of each graphical element (see below) transcript
73 fgcolor Foreground color of each element yellow
74 bgcolor Background color of each element blue
75 linewidth Width of lines 3
76 label Print the feature's name 1
77 description Whether to print the feature's description 0
78 bump Elements are not allowed to collide 1
79 ticks Print tick marks on arrows 1
80 connector Type of group connector (dashed, hat or solid) dashed
81
82 The "bases" and "width" options are only relevant in the [general]
83 section. They are overridden by the like-named command-line options.
84
85 The remainder of the options can be located in any section, but if
86 present in the [general] section will set defaults for the others.
87
88 Colors are English-language color names or Web-style #RRGGBB colors
89 (see a book on HTML for an explanation). True/false values are 1 for
90 true, and 0 for false. Numeric ranges can be expressed in start..end
91 fashion with two dots, or as start-end with a hyphen.
92
93 The "glyph" option controls how the features are rendered. The
94 following glyphs are implemented:
95
96 Name Description
97 ---- -----------
98
99 box A filled rectangle, nondirectional.
100 ellipse An oval.
101 arrow An arrow; can be unidirectional or
102 bidirectional. It is also capable of displaying
103 a scale with major and minor tickmarks, and can
104 be oriented horizontally or vertically.
105 segments A set of filled rectangles connected by solid
106 lines. Used for interrupted features, such as
107 gapped alignments and exon groups.
108 transcript Similar to segments, but the connecting line is
109 a "hat" shape, and the direction of
110 transcription is indicated by a small arrow.
111 transcript2 Similar to transcript, but the direction of
112 transcription is indicated by a terminal segment
113 in the shape of an arrow.
114 primers Two inward pointing arrows connected by a line. Used for STSs.
115
116 The bump option is the most important option for controlling the look
117 of the image. If set to false (the number 0), then the features are
118 allowed to overlap. If set to true (the number 1), then the features
119 will move vertically to avoid colliding. If not specified, bump is
120 turned on if the number of any given type of sequence feature is
121 greater than 50.
122
123 Data Section
124 The data section can follow or proceed the configuration section. The
125 two sections can also be intermixed. The data section is a tab or
126 whitespace-delimited file which you can export from a spreadsheet
127 application or word processor file (be sure to save as text only!)
128
129 Here is an example data section:
130
131 Cosmid B0511 . 516-619 Cosmid B0511 .
132 3185-3294 Cosmid B0511 . 10946-11208 Cosmid B0511
133 . 13126-13511 Cosmid B0511 . 66-208 Cosmid
134 B0511 . 6354-6499 Cosmid B0511 .
135 13955-14115 EST yk595e6.5 + 3187-3294 EST
136 yk846e07.3 - 11015-11208 EST yk53c10
137 yk53c10.5 + 18892-19154
138 yk53c10.3 - 15000-15500,15700-15800 EST
139 yk53c10.5 + 16032-16105 SwissProt PECANEX +
140 13153-13656 Swedish fish FGENESH "Gene 1" -
141 1-205,518-616,661-735,3187-3365,3436-3846 Transmembrane domain
142 FGENESH "Gene 2" - 16626-17396,17451-17597 Kinase and
143 sushi domains
144
145 Each line of the file contains five columns. The columns are:
146
147 Column # Description
148 -------- -----------
149
150 1 feature type
151 2 feature name
152 3 strand
153 4 coordinates
154 5 description
155
156 Feature type
157 The feature type should correspond to one of the [feature type]
158 headings in the configuration section. If it doesn't, the [general]
159 options will be applied to the feature when rendering it. The
160 feature name is a name for the feature. Use a "." or "-" if this is
161 not relevant. If the name contains whitespace, put single or double
162 quotes ("") around the name.
163
164 Strand
165 The strand indicates which strand the feature is on. It is one of
166 "+" for the forward strand, "-" for the reverse strand, or "." for
167 features that are not stranded.
168
169 Coordinates
170 The coordinates column is a set of one or more ranges that the
171 feature occupies. Ranges are written using ".." as in start..stop,
172 or with hyphens, as in start-stop. For features that are composed
173 of multiple ranges &em; for example transcripts that have multiple
174 exons &em; you can either put the ranges on the same line separated
175 by commas or spaces, or put the ranges on individual lines and just
176 use the same feature name and type to group them. In the example
177 above, the Cosmid B0511 features use the individual line style,
178 while the FGENESH features use the all-ranges-on-one-line style.
179
180 Description
181 The last column contains some descriptive text. If the description
182 option is set to true, this text will be printed underneath the
183 feature in the rendering.
184
185 Finally, it is possible to group related features together. An example
186 is the ESTs yk53c10.5 and yk53c10.3, which are related by being reads
187 from the two ends of the clone yk53c10. To indicate this relationship,
188 generate a section that looks like this:
189
190 EST yk53c10
191 yk53c10.5 + 18892-19154
192 yk53c10.3 - 15000-15500,15700-15800
193
194 The group is indicated by a line that contains just two columns
195 containing the feature type and a unique name for the group. Follow
196 this line with all the features that form the group, but leave the
197 first column (the feature type) blank. The group will be rendered by
198 drawing a dashed line between all the members of the group. You can
199 change this by specifying a different connector option in the
200 configuration section for this feature type.
201
203 Please report them to the author.
204
206 Bio::Graphics, feature_draw.pl
207
209 Lincoln Stein, lstein@cshl.org
210
211
212
213perl v5.12.0 2010-04-29 FREND(1)