Provided by: libbio-graphics-perl_2.40-2_all
NAME
Bio::Graphics::DrawTransmembrane - draw a cartoon of an Alpha-helical transmembrane protein.
SYNOPSIS
use Bio::Graphics::DrawTransmembrane; my @topology = (20,45,59,70,86,109,145,168,194,220); ## Simple use - -topology is the only option that is required my $im = Bio::Graphics::DrawTransmembrane->new( -title => 'This is a cartoon displaying transmembrane helices.', -topology => \@topology); ## More advanced use my %labels = (5 => '5 - Sulphation Site', 21 => '1st Helix', 47 => '40 - Mutation', 60 => 'Voltage Sensor', 72 => '72 - Mutation 2', 73 => '73 - Mutation 3', 138 => '138 - Glycosylation Site', 170 => '170 - Phosphorylation Site', 200 => 'Last Helix'); my $im = Bio::Graphics::DrawTransmembrane->new(-n_terminal=> 'out', -topology => \@topology, -bold_helices=> 1, -labels=> \%labels, -text_offset=> -15, -outside_label=>'Lumen', -inside_label=>'Cytoplasm', -membrane_label=>'Membrane', -vertical_padding=> 155); ## Parse Tmhmm data use Bio::Tools::Tmhmm; my $im = Bio::Graphics::DrawTransmembrane->new( -title=>'Let\'s parse some Tmhmm output...', -bold_helices=> 1); open(FILE, 'tmhmm.out'); my $parser = new Bio::Tools::Tmhmm(-fh => \*FILE ); while(my $tmhmm_feat = $parser->next_result ) { ## Load features into DrawTransmembrane object $im->add_tmhmm_feat($tmhmm_feat); } close FILE; ## Now write the image to a .png file open(OUTPUT, ">output.png"); binmode OUTPUT; print OUTPUT $im->png; close OUTPUT;
DESCRIPTION
A module to draw a cartoon of an alpha-helical transmembrane protein. It uses GD and allows the image to be written to a .png file. The options are a set of tag/value pairs as follows: Option Value Default ------ ----- ------- -topology Array containing transmembrane helix none boundaries. This is the only option that is required -topology_string Alternative to -topology, provide a string none containing the topology data in the form A.11,31;B.41,59;C.86,107;D.145,166 -n_terminal Location of the N-terminal of the sequence, out either 'in' or 'out' -title Title to add to the image none -inside_label Label for the inside of the membrane Cytoplasmic -outside_label Label for the outside of the membrane Extracellular -membrane_label Label for the membrane Plasma Membrane -colour_scheme Colour scheme to use. Current choices are blue blue, yellow, red, green, pink or white. -labels Label loops and helices using data from a none hash, e.g. %labels = (138 => 'Glycosylation Site', 190 => 'Binding Site'); The hash key must be numeric, ranges are not allowed. -bold_helices Draws black boxes round helices 1 -bold_labels Draws black boxes round labels 0 -text_offset Shift the text labeling the loops. Use a 0 negative value to shift it left, a positive value to shift it right -helix_height Transmembrane helix height 130 -helix_width Transmembrane helix width 50 -loop_width Loop width 20 -vertical_padding Vertical padding 140 -horizontal_padding Horizontal Padding 150 -membrane_offset Offest between helix end and membrane 6 -short_loop_height Height of short loops 90 -medium_loop_height Height of medium loops 120 -long_loop_height Height of long loops 150 -short_loop_limit Length in residues below which a loop is 15 classed as short -long_loop_limit Length in residues above which a loop is 30 classed as long -loop_heights Explicitly set heights of each loop, e.g. %loop_heights = (1 => 45, 2 => 220, 3 => 50, 4 => 220, 9 => 70); The key corresponds to the loop number. Both key and value must be numeric. If you use -loop_height and there is a defined height for the current loop then other height values will be overridden -n_terminal_height Height of N-terminal 150 -c_terminal_height Height of C-terminal 80 -n_terminal_offset Shift the N-terminal left by this amount 0 -c_terminal_offset Shift the C-terminal right by this amount 0 -helix_label Change the 'S' label on each helix. Only 1 S character is allowed -show_labels Display text labels on -draw_cytosol Show the cytosol false -draw_bilayer Show the membrane true -draw_loops Show the loops true -draw_terminai Show the terminai true -draw_helices Show the helices true -dontsort Don't automatically sort the topology array 0 -ttf_font Path to TTF font, e.g. none /usr/share/fonts/msttcorefonts/arial.ttf -ttf_font_size Default size for TTF font. Use 7-9 with 8 Arial for best results Height, width, padding and other numerical values can gernerally be left alone. They are useful if your labels consists of a lot of text as this may lead to them overlapping. In this case try increasing the loop_width or helix_width options. -text_offset is also very useful for avoiding overlapping.
AUTHOR
Tim Nugent <timnugent@gmail.com>