From 86e85aa5eaf27310d84ad693fe38adcdf8a87ca9 Mon Sep 17 00:00:00 2001
From: jprocter The Alignment Annotations File Alignment annotations can be imported onto an alignment since
-version 2.08 of Jalview, via an annotations file. It is a simple ASCII
-text file consisting of tab delimited records similar to the Sequence Features File, and introduced
-primarily for use with the Jalview applet. Alignment annotations files are imported into Jalview in the
-following ways:
-
-
-
- -annotations <Annotations filename>
Annotations File Format
-The File consists of lines containing an instruction followed by
-tab delimited fields, and any lines starting with "#" are
-ignored. The first non-commented out line of a valid Annotations file
-must begin with :JALVIEW_ANNOTATION
A row of annotation is added with a line like GRAPH_TYPE Label Values
The GRAPH_TYPE field, which appears first, defines the -appearance of the annotation row when rendered by Jalview. The next field is the row label for the annotation. The final Values field contains a series of "|" -separated value fields. Each value field is itself a comma separated list of fields of a particular type defined by the annotation row's -GRAPH_TYPE. The allowed values of GRAPH_TYPE and the format of their respective value fields (with the trailing "|" symbol) are shown below:
You can associate an annotation with a sequence by preceding its -definition with the line: -
SEQUENCE_REF seq_name [startIndex]-All Annotations defined after a SEQUENCE_REF command will then be -associated with that sequence, and the first field in the Value field -list will (optionally) be placed at the startIndex'th column. -
Sequence associations are turned off for subsequent annotation -definitions by: -
SEQUENCE_REF ALIGNMENT- -
LINE_GRAPH type annotations can be given a colour -(specified as 24 bit RGB triplet in hexadecimal or comma separated -values), combined onto the same vertical axis, and have ordinate lines -(horizontal lines at a particular vertical axis value) using the -following commands (respectively): -
COLOUR graph_name colour -COMBINE graph_1_name graph_2_name -GRAPHLINE graph_name value label colour --
Groups of sequences can be defined using the tab delimited line
-SEQUENCE_GROUP Group_Name Group_Start Group_End Sequences-
The sequences can be defined by alignment index and a range of sequences can - be defined in a comma delimited field such as
-2-5,8-15,20,22
-Enter * to select all groups.
-If the alignment indices are not known, enter -1 then a tab delimited list - of sequence ids.
-If the SEQUENCE_REF has been defined, the group_start and group_end will be - relative to the sequence residue numbering, otherwise the group_start and group_end - will be the alignment column indices.
-The group can (optionally) be assigned various visualisation properties via - another tab delimited line thus:
-PROPERTIES Group_name tab_delimited_key_value_pairs --
The key_value_pairs allow you to define a description and to colour the group - in various ways. All, none or some of the following values could be used for - a group:
-description=Text
- colour=Helix Propensity
- pidThreshold=0
- consThreshold=0
- outlineColour=red
- displayBoxes=true
- displayText=false
- colourText=false
- textCol1=black
- textCol2=black
- textColThreshold=0
-
An example Annotation file is given below: -
#Comment lines follow the hash symbol -JALVIEW_ANNOTATION -SEQUENCE_REF FER1_MESCR 5 -BAR_GRAPH Bar Graph 1 ||-100,-|-200,-|-300,-|-400,-|200,+|300,+|150,+ -LINE_GRAPH Green Values 1.1|2.2|1.3|3.4|0.7|1.4|3.3|2.2|2.1|-1.1|3.2 -LINE_GRAPH Red Values 2.1|3.2|1.3|-1.4|5.5|1.4|1.3|4.2|-1.1|1.1|3.2 -BAR_GRAPH Bar Graph 2 1,.|2,*|3,:|4,.|5,*|4,:|3,.|2|1|1|2|3|4|5|4 -NO_GRAPH Icons ||||E,Sheet1|E|E||||H,Sheet 2|H|H|H|||||| -NO_GRAPH Purple Letters m|y|p|r|o|t|e|i|n -COLOUR Bar Graph 2 blue -COLOUR Red Values 255,0,0 -COLOUR Green Values green -COLOUR Purple Letters 151,52,228 -COMBINE Green Values Red Values -GRAPHLINE Red Values 2.6 threshold black - -SEQUENCE_GROUP Group_A 30 50 * -SEQUENCE_GROUP Group_B 1 351 2-5 -SEQUENCE_GROUP Group_C 12 14 -1 seq1 seq2 seq3 -PROPERTIES Group_A description=This is the description colour=Helix Propensity pidThreshold=0 outlineColour=red displayBoxes=true displayText=false colourText=false textCol1=black textCol2=black textColThreshold=0 -PROPERTIES Group_B outlineColour=red -PROPERTIES Group_C colour=Clustal -- - - + + + +
The Alignment Annotations File
+Alignment annotations can be imported onto an alignment since +version 2.08 of Jalview, via an annotations file. It is a simple ASCII +text file consisting of tab delimited records similar to the Sequence Features File, and introduced +primarily for use with the Jalview applet.
+Alignment annotations files are imported into Jalview in the
+following ways:
+
+ -annotations <Annotations filename>
Annotations File Format
+The File consists of lines containing an instruction followed by
+tab delimited fields, and any lines starting with "#" are
+ignored. The first non-commented out line of a valid Annotations file
+must begin with :JALVIEW_ANNOTATION
A row of annotation is added with a line like GRAPH_TYPE Label Values
The GRAPH_TYPE field, which appears first, defines the +appearance of the annotation row when rendered by Jalview. The next field is the row label for the annotation. The final Values field contains a series of "|" +separated value fields. Each value field is itself a comma separated list of fields of a particular type defined by the annotation row's +GRAPH_TYPE. The allowed values of GRAPH_TYPE and the format of their respective value fields (with the trailing "|" symbol) are shown below:
You can associate an annotation with a sequence by preceding its +definition with the line: +
SEQUENCE_REF seq_name [startIndex]+All Annotations defined after a SEQUENCE_REF command will then be +associated with that sequence, and the first field in the Value field +list will (optionally) be placed at the startIndex'th column. +
Sequence associations are turned off for subsequent annotation +definitions by: +
SEQUENCE_REF ALIGNMENT+ +
LINE_GRAPH type annotations can be given a colour +(specified as 24 bit RGB triplet in hexadecimal or comma separated +values), combined onto the same vertical axis, and have ordinate lines +(horizontal lines at a particular vertical axis value) using the +following commands (respectively): +
COLOUR graph_name colour +COMBINE graph_1_name graph_2_name +GRAPHLINE graph_name value label colour ++
Groups of sequences can be defined using the tab delimited line
+SEQUENCE_GROUP Group_Name Group_Start Group_End Sequences+
The sequences can be defined by alignment index and a range of sequences can + be defined in a comma delimited field such as
+2-5,8-15,20,22
+Enter * to select all groups.
+If the alignment indices are not known, enter -1 then a tab delimited list + of sequence ids.
+If the SEQUENCE_REF has been defined, the group_start and group_end will be + relative to the sequence residue numbering, otherwise the group_start and group_end + will be the alignment column indices.
+The group can (optionally) be assigned various visualisation properties via + another tab delimited line thus:
+PROPERTIES Group_name tab_delimited_key_value_pairs ++
The key_value_pairs allow you to define a description and to colour the group + in various ways. All, none or some of the following values could be used for + a group:
+description=Text
+ colour=Helix Propensity
+ pidThreshold=0
+ consThreshold=0
+ outlineColour=red
+ displayBoxes=true
+ displayText=false
+ colourText=false
+ textCol1=black
+ textCol2=black
+ textColThreshold=0
+ idColour=ff3322
+
An example Annotation file is given below: +
#Comment lines follow the hash symbol +JALVIEW_ANNOTATION +SEQUENCE_REF FER1_MESCR 5 +BAR_GRAPH Bar Graph 1 ||-100,-|-200,-|-300,-|-400,-|200,+|300,+|150,+ +LINE_GRAPH Green Values 1.1|2.2|1.3|3.4|0.7|1.4|3.3|2.2|2.1|-1.1|3.2 +LINE_GRAPH Red Values 2.1|3.2|1.3|-1.4|5.5|1.4|1.3|4.2|-1.1|1.1|3.2 +BAR_GRAPH Bar Graph 2 1,.|2,*|3,:|4,.|5,*|4,:|3,.|2|1|1|2|3|4|5|4 +NO_GRAPH Icons ||||E,Sheet1|E|E||||H,Sheet 2|H|H|H|||||| +NO_GRAPH Purple Letters m|y|p|r|o|t|e|i|n +COLOUR Bar Graph 2 blue +COLOUR Red Values 255,0,0 +COLOUR Green Values green +COLOUR Purple Letters 151,52,228 +COMBINE Green Values Red Values +GRAPHLINE Red Values 2.6 threshold black + +SEQUENCE_GROUP Group_A 30 50 * +SEQUENCE_GROUP Group_B 1 351 2-5 +SEQUENCE_GROUP Group_C 12 14 -1 seq1 seq2 seq3 +PROPERTIES Group_A description=This is the description colour=Helix Propensity pidThreshold=0 outlineColour=red displayBoxes=true displayText=false colourText=false textCol1=black textCol2=black textColThreshold=0 +PROPERTIES Group_B outlineColour=red +PROPERTIES Group_C colour=Clustal ++ + + diff --git a/src/jalview/io/AnnotationFile.java b/src/jalview/io/AnnotationFile.java index 6285cf1..d5039de 100755 --- a/src/jalview/io/AnnotationFile.java +++ b/src/jalview/io/AnnotationFile.java @@ -312,6 +312,10 @@ public class AnnotationFile { text.append("textColThreshold=" + sg.thresholdTextColour); } + if (sg.idColour!=null) + { + text.append("idColour="+jalview.util.Format.getHexString(sg.idColour)+"\t"); + } text.append("\n\n"); @@ -816,6 +820,8 @@ public class AnnotationFile if (sg != null) { String keyValue, key, value; + ColourSchemeI def = sg.cs; + sg.cs = null; while (st.hasMoreTokens()) { keyValue = st.nextToken(); @@ -878,9 +884,16 @@ public class AnnotationFile { sg.thresholdTextColour = Integer.parseInt(value); } - + else if (key.equalsIgnoreCase("idColour")) + { + sg.setIdColour((def = new UserColourScheme(value)).findColour('A')); + } sg.recalcConservation(); } + if (sg.cs==null) + { + sg.cs = def; + } } } -- 1.7.10.2