The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Bio::Graphics::Glyph::heat_map - The "heat_map" glyph

SYNOPSIS

See Bio::Graphics::Panel and Bio::Graphics::Glyph.

DESCRIPTION

This glyph draws "scored" features using a continuous color gradient is the HSV color space. The color of each segment is proportionate to the score.

OPTIONS

Global glyph options:

See Bio::Graphics::Glyph::generic

Glyph-specific options:

The color_map glyph recognizes the following glyph-specific options:

 Option      Description                   Default
 ------      -----------                   -------

 -start_color Beginning of the color       white
              gradient, expressed as a 
              named color or RGB hex 
              string

 -end_color   End of the color gradient    red

 -brightness  Color brilliance:  0-100     Calculated
              This will override the 
              value from the named
              color

 -saturation  Color saturation: 0-100      Calculated
              This will override the
              value from the named
              color

 -pure_hue    Use the pure hue (bright-    0 (false)
              ness and saturation both
              at 100) for the named color
              
 -max_score   Maximum value of the	    Calculated
              feature's "score" attribute

 -min_score   Minimum value of the         Calculated
              feature's "score" attribute

 -vary_fg     Vary the foreground color    1 (true)
              with the background color

If max_score and min_score are not specified, the glyph will calculate the local maximum and minimum scores at run time. If single features, unaggregated features, or multiple aggregates are being drawn, this will result in an inconsistent color scale. It is recommended that global maximum and minimum scores be specified in the track configuration. Since many scoring functions are exponential, you may wish to take the log of your scores before passing them to this glyph.

Color Gradients

The color gradient is calculating by progressing along the rainbow spectrum from red to violet, also incrementing brightness and saturation, all proportate to the score value. To vary the hue only, "pure" hues can be used. Pure hues have brightness and saturation values of 100. Some examples, in order, are red, yellow, lime, aqua/cyan, blue and magenta. The gradient can progress in reverse orientation with the respect to the visible light spectrum if a lower-order color is used as the start and a higher order color used as the end (for example lime->red).

Using the "pure_hue" option results in a brighter, more vibrant color spectrum, Choosing darker start and end colors, such as green or maroon, will result in a darker spectrum. A single color spectrum can be created by using black or white as the start or end color.

A grayscale spectrum will result if black and white are used as start and end colors. One example of an effective visual heat map is to progress from white->red.

For the start_color and end_color options, 140 named webcolors and their corresponsing RGB hex codes (listed below) are supported.

steelblue           	#4682B4
royalblue           	#041690
cornflowerblue      	#6495ED
lightsteelblue      	#B0C4DE
mediumslateblue     	#7B68EE
slateblue           	#6A5ACD
darkslateblue       	#483D8B
midnightblue        	#191970
navy                	#000080
darkblue            	#00008B
mediumblue          	#0000CD
blue                	#0000FF
dodgerblue          	#1E90FF
deepskyblue         	#00BFFF
lightskyblue        	#87CEFA
skyblue             	#87CEEB
lightblue           	#ADD8E6
powderblue          	#B0E0E6
azure               	#F0FFFF
lightcyan           	#E0FFFF
paleturquoise       	#AFEEEE
mediumturquoise     	#48D1CC
lightseagreen       	#20B2AA
darkcyan            	#008B8B
teal                	#008080
cadetblue           	#5F9EA0
darkturquoise       	#00CED1
aqua                	#00FFFF
cyan                	#00FFFF
turquoise           	#40E0D0
aquamarine          	#7FFFD4
mediumaquamarine    	#66CDAA
darkseagreen        	#8FBC8F
mediumseagreen      	#3CB371
seagreen            	#2E8B57
darkgreen           	#006400
green               	#008000
forestgreen         	#228B22
limegreen           	#32CD32
lime                	#00FF00
chartreuse          	#7FFF00
lawngreen           	#7CFC00
greenyellow         	#ADFF2F
yellowgreen         	#9ACD32
palegreen           	#98FB98
lightgreen          	#90EE90
springgreen         	#00FF7F
mediumspringgreen   	#00FA9A
darkolivegreen      	#556B2F
olivedrab           	#6B8E23
olive               	#808000
darkkhaki           	#BDB76B
darkgoldenrod       	#B8860B
goldenrod           	#DAA520
gold                	#FFD700
yellow              	#FFFF00
khaki               	#F0E68C
palegoldenrod       	#EEE8AA
blanchedalmond      	#FFEBCD
moccasin            	#FFE4B5
wheat               	#F5DEB3
navajowhite         	#FFDEAD
burlywood           	#DEB887
tan                 	#D2B48C
rosybrown           	#BC8F8F
sienna              	#A0522D
saddlebrown         	#8B4513
chocolate           	#D2691E
peru                	#CD853F
sandybrown          	#F4A460
darkred             	#8B0000
maroon              	#800000
brown               	#A52A2A
firebrick           	#B22222
indianred           	#CD5C5C
lightcoral          	#F08080
salmon              	#FA8072
darksalmon          	#E9967A
lightsalmon         	#FFA07A
coral               	#FF7F50
tomato              	#FF6347
darkorange          	#FF8C00 
orange              	#FFA500
orangered           	#FF4500
crimson             	#DC143C
red                 	#FF0000
deeppink            	#FF1493
fuchsia             	#FF00FF
magenta             	#FF00FF
hotpink             	#FF69B4
lightpink           	#FFB6C1
pink                	#FFC0CB
palevioletred       	#DB7093
mediumvioletred     	#C71585
purple              	#800080
darkmagenta         	#8B008B
mediumpurple        	#9370DB
blueviolet          	#8A2BE2
indigo              	#4B0082
darkviolet          	#9400D3
darkorchid          	#9932CC
mediumorchid        	#BA55D3 
orchid              	#DA70D6 
violet              	#EE82EE
plum                	#DDA0DD
thistle             	#D8BFD8
lavender            	#E6E6FA
ghostwhite          	#F8F8FF
aliceblue           	#F0F8FF
mintcream           	#F5FFFA
honeydew            	#F0FFF0
lightgoldenrodyellow	#FAFAD2
lemonchiffon        	#FFFACD
cornsilk            	#FFF8DC
lightyellow         	#FFFFE0
ivory               	#FFFFF0
floralwhite         	#FFFAF0
linen               	#FAF0E6
oldlace             	#FDF5E6
antiquewhite        	#FAEBD7
bisque              	#FFE4C4
peachpuff           	#FFDAB9
papayawhip          	#FFEFD5
beige               	#F5F5DC
seashell            	#FFF5EE
lavenderblush       	#FFF0F5
mistyrose           	#FFE4E1
snow                	#FFFAFA
white               	#FFFFFF
whitesmoke          	#F5F5F5
gainsboro           	#DCDCDC
lightgrey           	#D3D3D3
silver              	#C0C0C0
darkgray            	#A9A9A9
gray                	#808080
lightslategray      	#778899
slategray           	#708090
dimgray             	#696969
darkslategray       	#2F4F4F
black               	#000000

BUGS

Please report them.

SEE ALSO

Bio::Graphics::Panel, Bio::Graphics::Glyph, Bio::Graphics::Glyph::graded_segments, Bio::Graphics::Glyph::heterogeneous_segments, Bio::Graphics::Feature, Bio::DB::GFF GD

AUTHOR

Sheldon McKay <mckays@cshl.edu>

Copyright (c) 2006 Cold Spring Harbor Laboratory

This package and its accompanying libraries is free software; you can redistribute it and/or modify it under the terms of the GPL (either version 1, or at your option, any later version) or the Artistic License 2.0. Refer to LICENSE for the full license text. In addition, please see DISCLAIMER.txt for disclaimers of warranty.