updated tutorial for Jalview 2.7 - includes contributions from Saif Shehata
[jalview-manual.git] / TheJalviewTutorial.tex
1 %\documentclass[a4paper,11pt]{report}
2 \documentclass[a4paper,11pt]{book}
3 \usepackage[format=hang,margin=10pt]{caption}
4 \usepackage{footnote}
5 \usepackage{graphicx}
6 \usepackage{amssymb}
7 \usepackage{epstopdf}
8 \usepackage{hyperref}
9 \usepackage{subfigure}
10 \DeclareGraphicsRule{.tif}{png}{.png}{`convert #1 `dirname #1`/`basename #1 .tif`.png}
11 \voffset = -0.5 in
12 \hoffset = -0.85 in
13 \textwidth = 6.5 in 
14 \textheight = 9.5 in 
15 \oddsidemargin = 1.20 in
16 \evensidemargin = 0.2 in
17 \topmargin = 0.0 in 
18 \headheight = 0.35 in
19 \headsep = 0.4 in
20 %\headheight = 0.0 in \headsep = 0.0 in
21 \parskip = 0.2in \parindent = 0.0in
22
23
24 \newtheorem{theorem}{Theorem}
25 \newtheorem{corollary}[theorem]{Corollary}
26 \newtheorem{definition}{Definition}
27
28
29 \title{Jalview 2.5: A manual and introductory tutorial }
30 \author{David Martin, James Procter, Andrew Waterhouse and Geoff Barton}
31 \date{Manual version 1.2.3 6th May 2011}
32
33 \newcommand{\clearemptydoublepage}{\newpage{\pagestyle{empty}}\cleardoublepage}
34
35 % how the hell do we add another panel with text like : This tutorial introduces
36 % the user to the features of Jalview, a multiple sequence alignment editor and
37 % viewer available from http://www.jalview.org to the title page.
38
39 % \renewcommand{menustyle}{\tt} %do something more advanced here.
40
41 \newcounter{ecount} 
42 \newcounter{exstep}[ecount]
43 \renewcommand{\theecount} {\arabic{ecount}}
44 \renewcommand{\theexstep} {\arabic{ecount}.\alph{exstep}}
45
46 \newcommand{\exercise}[2] { 
47 \refstepcounter{ecount}
48 \begin{center} \fbox{\parbox[b][\height]{6in}{ 
49 {\bf
50 % this doesn't work - page refs are off 
51 %  \mbox{\addcontentsline{toc}{subsection}{ Exercise \theecount : #1 } }
52 Exercise \theecount  :  #1  } 
53 \par #2 }} \end{center}
54 \pagebreak[0]
55 }
56 \newcommand{\exstep}[1]{ \stepcounter{exstep} {\sl \theexstep.}  \begin{minipage}[t]{5.5in} #1 \end{minipage} \par \vspace *{1mm} }
57 %%% Remove the % on the next 2 lines to hide tutorials.
58 %\renewcommand{\exercise}[2]{} 
59 %\renewcommand{\exstep}[1]{} 
60
61 \begin{document}
62
63
64 \pagenumbering{}
65
66 %\maketitle
67 % we make our own title because JBP is not clever enough to work out how
68 % to
69 % do
70 % this automatically
71
72 \begin{center}
73
74 {\Huge
75  
76 Jalview 2.7
77 }
78 \vspace{0.5in}
79 {\huge 
80
81 A manual and introductory tutorial }
82
83 \vspace{2.4in}
84
85 {\large
86
87 David Martin, James Procter, Andrew Waterhouse, Saif Shehata and Geoff Barton
88
89 }
90
91 \vspace{1.2in}
92
93 College of Life Sciences, University of Dundee
94
95 Dundee, Scotland DD1 5EH, UK
96
97
98 \vspace{2in}
99
100 Manual version 1.3.02
101
102 25th June 2012
103
104
105 \end{center}
106
107 \newpage
108
109 % \clearemptydoublepage
110
111 % ($Revision$) 11th October 2010.}
112 % TODO revise for 2.6
113
114 \pagenumbering{roman}
115 \setcounter{page}{1}
116 \tableofcontents 
117 \clearemptydoublepage
118 % \listoffigures 
119 % \newpage
120 % \listoftables 
121 % \newpage
122 \pagenumbering{arabic}
123 \setcounter{page}{1}
124
125 \chapter{Basics}
126 \label{jalviewbasics}
127 \section{Introduction}
128 \subsection{Jalview}
129 Jalview is a multiple sequence alignment viewer, editor and analysis tool.
130 Jalview is designed to be platform independent (running on Mac, MS Windows, Linux
131 and any other platform that supports Java), capable of editing and analysing
132 large alignments (thousands of sequences) with minimal degradation in
133 performance, and able to show multiple integrated views of the alignment and
134 other data. Jalview can read and write many common sequence formats including
135 FASTA, Clustal, MSF(GCG) and PIR.
136
137
138 There are two types of Jalview program. The {\bf Jalview Desktop} is a stand
139 alone application that provides powerful editing, visualization, annotation and
140 analysis capabilities. The {\bf JalviewLite} applet has the same core
141 visualization, editing and analysis capabilities as the desktop, without the
142 desktop's webservice and figure generation capabilities. It is designed to be
143 embedded in a web page\footnote{A demonstration version of Jalview (Jalview Micro
144 Edition) also runs on a mobile phone but the functionality is limited to sequence
145 colouring.}, to allow customisable display of alignments for web sites such as
146 {\bf pfam}\footnote{\url{http://pfam.sanger.ac.uk}}.
147
148
149 Jalview 2.7 was released in September 2011. The Jalview Desktop in this version
150 provides access to sequence, alignment and protein structure databases, and
151 includes the Jmol\footnote{ Provided under the LGPL licence at
152 \url{http://www.jmol.org}} protein structure viewer. It includes a
153 Distributed Annotation System (DAS) client\footnote{with thanks to Andreas Prlic} which facilitates the retrieval and display of third party sequence
154 annotation in association with sequences and any associated structure. It also
155 provides a graphical user interface for {\bf Ja}va {\bf B}ioinformatics
156 {\bf A}nalysis {\bf W}eb {\bf S}ervices (JABAWS) which enable access to a
157 range of multiple sequence alignment programs.
158
159 \subsection{Jalview's Capabilities}
160 % TODO add references to appropriate sections for each capability described here.
161 Figure \ref{jvcapabilities} gives an overview of the main features of the Jalview desktop application. Its primary function is the editing and visualization of sequence alignments, and their interactive analysis. Tree building, principal components analysis, physico-chemical property conservation and sequence consensus analyses are built in to the program. Web services enable Jalview to access remote alignment and secondary structure prediction programs, as well as to retrieve protein and nucleic acid sequences, alignments, protein structures and sequence annotation. Sequences, alignments, trees, structures, features and alignment annotation may also be exchanged with the local filesystem. Multiple visualizations of an alignment may be worked on simultaneously, and the user interface provides a comprehensive set of controls for colouring and layout. Alignment views are dynamically linked with Jmol structure displays, a tree viewer and spatial cluster display, facilitating interactive exploration of the alignment's structure. The application provides its own Jalview project file format in order to store the current state of an alignment and analysis windows. Jalview also provides WYSIWIG\footnote{WYSIWIG: What You See Is What You Get.} style figure generation capabilities for the preparation of alignments for publication.
162 \begin{figure}[htbp]
163 \begin{center}
164 \includegraphics[width=5.8in]{images/jvcapabilities.pdf}
165 \caption{{\bf Capabilities of the Jalview Desktop.} The Jalview Desktop Application provides a stable environment for the creation, editing and analysis of alignments and the generation of figures.}
166 \label{jvcapabilities}
167 \end{center}
168 \end{figure}
169
170 \subsubsection{Jalview History}
171 Jalview was initially developed in 1996 by Michele Clamp, James Cuff, Steve
172 Searle and Geoff Barton at the University of Oxford and then the European
173 Bioinformatics Institute. Development of Jalview 2 was made possible with
174 eScience funding from the BBSRC\footnote{Biotechnology and Biological Sciences
175 Research Council grant  {\sl ``VAMSAS: Visualization and Analysis of Molecules,
176 Sequence Alignments and Structures"}, a joint project to enable interoperability
177 between Jalview, TOPALi and AstexViewer.} in 2004, enabling Andrew Waterhouse and
178 Jim Procter to re-engineer the original program to introduce contemporary developments
179 in bioinformatics and take advantage of the latest web and Java technology.
180 Jalview's development is now supported for a further 5 years from October 2009
181 by an award from the BBSRC's Tools and Resources fund. In 2010 and 2011, Jalview
182 benefitted from the \href{http://code.google.com/soc/}{Google Summer of Code},
183 when Lauren Lui and Jan Engelhardt introduced new features for handling RNA
184 alignments and secondary structure annotation.
185
186  
187 %TODO describe future plans in history ? not a good idea.
188 % Jalview continues to be one of the worlds most popular\footnote{and in the authors opinion, the best.} sequence alignment and analysis tools.
189
190 \subsubsection{Citing Jalview}
191 If you use Jalview in your work you should cite:\newline
192 {\sl ``Jalview Version 2 - a multiple sequence alignment editor and analysis workbench"}\newline
193 Waterhouse, A.M., Procter, J.B., Martin, D.M.A, Clamp, M. and Barton, G. J. (2009) \newline {\sl Bioinformatics}  doi: 10.1093/bioinformatics/btp033
194
195 This paper supersedes the original Jalview publication:\newline {\sl ``The Jalview Java alignment
196 editor"} \newline Michele Clamp, James Cuff, Stephen M. Searle and Geoffrey J. Barton (2004) \newline {\sl Bioinformatics} {\bf 20} 426-427. 
197
198   
199 \subsection{About this tutorial }
200
201 This tutorial is written in a manual format with short exercises where
202 appropriate, typically at the end of each section. This chapter concerns the
203 basic operation of Jalview and should be sufficient for those who just want to
204 load Jalview (Section \ref{startingjv}), open an alignment (Section \ref{loadingseqs}), perform basic editing and colouring (Section \ref{selectingandediting} and Section \ref{colours}), and produce publication
205 and presentation quality graphical output (Section \ref{layoutandoutput}).
206
207 Chapter \ref{analysisannotation} covers the additional visualization and
208 analysis techniques that Jalview provides. This includes working with the
209 embedded Jmol molecular structure viewer, building and viewing trees and PCA
210 plots, and using trees for sequence conservation analysis. An overview of
211 the Jalview Desktop's webservices is given in Section \ref{jvwebservices}, and
212 the alignment and secondary structure prediction services are described
213 in detail in Sections \ref{msaservices} and \ref{protsspredservices}. Following
214 this, Section \ref{featannot} details the creation and visualization of sequence
215 and alignment annotation, and the retrieval of sequences and annotation from
216 databases and DAS Servers. Finally, Section \ref{workingwithnuc} discusses
217 specific features of use when working with nucleic acid sequences and protein
218 coding regions.
219
220 %^Chapter \ref{jalviewadvanced} The third chapter covers the detail^ of Jalview and is aimed at the user who is
221 %already familiar with Jalview operation but wants to get more out of their
222 %Jalview experience.
223
224 \subsubsection{Typographic Conventions}
225
226 Keystrokes using the special non-symbol keys are represented in the tutorial by enclosing the pressed keys with square brackets ({\em e.g.} [RETURN] or [CTRL]). Keystroke combinations are combined with a `-' symbol ({\em e.g.} [CTRL]-C means press [CTRL] and the `C' key). Menu options are given as a path from the menu that contains them - for example {\sl File $\Rightarrow$ Input Alignment $\Rightarrow$ From URL} means to select the `From URL' option from the `Input Alignment' submenu of a window's `File' dropdown menu.
227
228 \section{Obtaining and starting The Jalview Desktop Application}
229 \label{startingjv}
230 \begin{figure}[htbp]
231 \begin{center}
232 \includegraphics[width=4.5in]{images/download.pdf}
233 \caption{{\bf Download page on the Jalview web site}}
234 \label{download}
235 \end{center}
236 \end{figure}
237
238 This tutorial is based on the application version of Jalview, the Jalview
239 Desktop. Much of the information will also be useful for users of the JalviewLite
240 applet, which has the same core editing, analysis and visualization capabilities (see the
241 \href{http://www.jalview.org/examples/applets.html}{JalviewLite Applet Examples}
242 page for examples). The Jalview Desktop, however, is much more powerful, and
243 includes additional support for interaction with external web services, and
244 production of publication quality graphics.
245
246 The Jalview Desktop can be run in two ways; as an application launched from the
247 web {\sl via} Java Web Start, or as an application loaded onto your hard drive. Both
248 versions are obtained from the Download page at the Jalview web site
249 (http://www.jalview.org/).
250
251 Jalview can be started directly with webstart by navigating to the Download page
252 ({\sl via} the menu on the left hand side), and clicking the `Start with Java Webstart'
253 button. (Figure \ref{download}). This will always launch the latest stable
254 release of Jalview.\par
255
256 The application will start automatically though you may be prompted to accept a
257 security certificate signed by the Barton Group. You can always trust us, so click trust
258 or accept as appropriate. The splash screen (Figure \ref{splash}) gives
259 information about the version and build date that you are running,
260 information about later versions (if available), and the paper to cite in your
261 publications. This information is also available on the Jalview web site and from the {\sl Help $\Rightarrow$ About} menu option.
262
263 %[fig 2] 
264 \begin{figure}[htbp]
265
266 \begin{center}
267 \includegraphics[width=4.5in]{images/splash.pdf}
268 \caption{{\bf Jalview splash screen}}
269 \label{splash}
270 \end{center}
271 \end{figure}
272
273 When Jalview starts it will automatically load an example alignment from the
274 Jalview site. This behaviour can be changed in the Jalview Desktop preferences
275 dialog opened from the Desktop's {\sl Tools $\Rightarrow$ Preferences..} menu.
276 This alignment will look like the one in Figure \ref{startpage} (this is taken
277 from Jalview version 2.7).
278
279 %[figure 3 ]
280 \begin{figure}[htbp]
281 \begin{center}
282 \includegraphics[width=4in]{images/start.pdf}
283 \caption{{\bf Default startup for Jalview}}
284 \label{startpage}
285 \end{center}
286 \end{figure}
287
288
289 \subsubsection{Jalview News RSS Feed}
290
291 From time to time, important announcements are made available to users of the
292 Jalview Destop {\sl via} the Jalview News reader. This window will open
293 automatically when new news is available, and can also be accessed {\sl via} the
294 Desktop's `{\sl Tools $\Rightarrow$ Show Jalview News}' menu entry. 
295
296 \begin{figure}[htbp]
297 \begin{center}
298 \includegraphics[height=3in]{images/jvrssnews.pdf}
299 \caption{{\bf The Jalview News Reader.} The news reader opens automatically
300 when new articles are available from the Jalview Desktop's news channel.}
301 \label{jalviewrssnews}
302 \end{center}
303 \end{figure}
304
305
306 \exercise{Starting Jalview}{
307 \label{start}
308 \exstep{Point your web browser at the \href{http://www.jalview.org}{Jalview web site} and start Jalview by clicking on the `Start with Java WebStart' button.}
309 \exstep{Open the Jalview Desktop's user preferences dialog (from the Tools
310 menu), and untick the checkbox adjacent to the `Open file' entry in the
311 `Visual' preferences tab.}
312 \exstep{Click OK to save the preferences, then \em{launch another Jalview
313 instance from the web site}. The example alignment should not be
314 loaded when the new Jalview instance starts up.}
315 {\sl Note: Should you want to reload the example alignment, then select the
316 {\em File$\Rightarrow$ From URL} entry from the Desktop menu, and click on the
317 URL history button on the right hand side of the dialog box that opens to
318 recover the example file's URL, followed by OK, to open the file. } }
319
320 \subsection{Getting Help}
321 \label{gettinghelp}
322 \subsubsection{Built in documentation}
323 Jalview has comprehensive on-line help documentation. Select  {\sl Help $\Rightarrow$ Documentation} from the main window menu and a new window will open (Figure \ref{help}). The appropriate topic can then be selected from the navigation panel on the left hand side. To search for a specific topic, click the `search' tab and enter keywords in the box which appears.
324
325
326 \begin{figure}[htbp]
327 \begin{center}
328 \parbox[c]{2in}{\centerline{\includegraphics[width=2.75in]{images/help1.pdf}}}
329 \parbox[c]{4in}{\includegraphics[width=4in]{images/help2.pdf}}
330 \caption{{\bf Accessing the built in Jalview documentation}}
331 \label{help}
332 \end{center}
333 \end{figure}
334
335 \subsubsection{Email lists}
336
337 The Jalview Discussion list {\tt jalview-discuss@jalview.org} provides a forum for Jalview users and developers to raise problems and exchange ideas - any problems, bugs, and requests for help should be raised here. The {\tt jalview-announce@jalview.org} list can also be subscribed to if you wish to be kept informed of new releases and developments. Archives and mailing list subscription details can be found on the Jalview web site.
338
339 \section{Navigation}
340 \label{jvnavigation}
341 The major features of the Jalview Desktop are illustrated in Figure \ref{anatomy}. The alignment window is the primary window for editing and visualization, and can contain several independent views of the alignment being worked with. The other windows (Trees, Structures, PCA plots, etc) are linked to a specific alignment view. Each area of the alignment window has a separate context menu accessed by clicking the right mouse button.  
342
343  Jalview has two navigation and editing modes: normal mode, where editing and navigation is performed using the mouse, and cursor mode where editing and navigation are performed using the keyboard. The F2 key is used to switch between these two modes. 
344
345 \begin{figure}[htb]
346 \begin{center}
347 \includegraphics[width=6.5in]{images/jalview_anatomy.pdf}
348 \caption{{\bf The anatomy of Jalview.} The major features of the Jalview Desktop Application are labelled.}
349 % TODO: modify text labels to be clearer - black on grey and black border for clarity
350 \label{anatomy}
351 \end{center}
352 \end{figure}
353
354 \subsection{Navigation in Normal mode}
355
356 Jalview always starts up in Normal mode, where the mouse is used to interact with the displayed alignment view. You can move about the alignment by clicking and dragging the ruler scroll bar to move horizontally, or by clicking and dragging the alignment scroll bar to the right of the alignment to move vertically.  If all the rows or columns in the alignment are displayed, the scroll bars will not be visible.
357
358  Each alignment view shown in the alignment window presents a window onto the visible regions of the alignment. This means that with anything more than a few residues or sequences, alignments can become difficult to visualize on the screen because only a small area can be shown at a time. It can help, especially when examining a large alignment, to have an overview of the whole alignment. Select {\sl View $\Rightarrow$ Overview Window} from the window menu (Figure \ref{overview}).
359 %(Figure4)
360 \begin{figure}[htbp]
361 \begin{center}
362 \includegraphics[width=4.5in]{images/overview.pdf}
363 \caption{{\bf Alignment Overview Window}}
364 \label{overview}
365 \end{center}
366 \end{figure}
367
368 The red box in the overview window shows the current view in the alignment window. A percent identity histogram is plotted below the alignment overview. Shaded parts indicate rows and columns of the alignment that are hidden (in this case, a single row at the bottom of the alignment - see Section \ref{hidingregions}). You can navigate around the alignment by dragging the red box. %Try this now and see how the view in the alignment window changes.
369
370 \parbox[c]{3in}{Alignment and analysis windows are closed by clicking on the usual `close' icon (indicated by arrows on Mac OS X). If you want to close all the alignments and analysis windows at once, then use the {\sl Window $\Rightarrow$ Close All} option from the Jalview desktop (\em{warning: make sure you have saved your work because this cannot be undone !}). }
371 \parbox[c]{3in}{\centerline{\includegraphics[width=2.5in]{images/start_closeall.pdf}
372 }}
373
374 \subsection{Navigation in Cursor mode}
375 \label{cursormode}
376 \parbox[c]{5in}{Cursor mode navigation enables the experienced user to quickly and precisely navigate, select and edit parts of an alignment. On pressing F2 to enter cursor mode the position of the cursor is indicated by a black background and white text. The cursor can be placed using the mouse or moved by pressing the arrow keys ($\uparrow$, $\downarrow$, $\leftarrow$, $\rightarrow$). 
377 }\parbox[c]{1.25in}{\centerline{\includegraphics[width=0.8in]{images/cursor1.pdf}}}
378
379 Rapid movement to specific positions is accomplished as listed below:
380 \begin{list}{$\circ$}{}
381 \item {\bf Jump to Sequence {\sl n}:} Type a number {\sl n} then press [S] to move to sequence (row) {\sl n}  
382 \item {\bf Jump to Column {\sl n}:} Type a number {\sl n} then press [C] to move to column {\sl n} in the alignment.  
383 \item {\bf Jump to Residue {\sl n}:} Type a number {\sl n} then press [P] to move to residue number {\sl n} in the current sequence.  
384 \item {\bf Jump to  column {\sl m} row {\sl n}:} Type the column number {\sl m}, a comma, the row number {\sl n} and press [RETURN]. 
385 \end{list}
386
387 \exercise{Navigation}{
388 \label{navigate}
389 \exstep{Scroll around the alignment using the alignment (vertical) and ruler (horizontal) scroll bars.}
390 \exstep{Find and open the Overview Window. Move around the alignment by clicking and dragging the red box in the overview window.}
391 \exstep{Look at the status bar as you move the mouse over the alignment. It should indicate information about the sequence and residue under the cursor.
392 }
393 \exstep{Press [F2] to enter Cursor mode. Use the arrow keys to move the cursor around the alignment. 
394 Move to sequence 7 by pressing {\sl 7 S}. Move to column 18 by pressing {\sl 1 8 C}. Move to residue 18 by pressing {\sl 1 8 P}. Note that these can be two different positions if gaps are inserted into the sequence. Move to sequence 5, column 13 by typing {\sl 1 3 , 5 [RETURN]}.
395 }
396
397 \subsection{The Find Dialog Box}
398 \label{searchfunction}
399 A further option for navigation is to use the {\sl Select $\Rightarrow$
400 Find\ldots} function. This opens a dialog box into which can be entered regular
401 expressions for searching sequences and sequence IDs, or sequence numbers. Hitting the [Find next] button will highlight the first (or next) occurrence of that pattern in the sequence ID panel or the alignment, and will adjust the view in order to display the highlighted region. The Jalview help provides comprehensive documentation for this function, and a quick guide to the regular expressions that can be used with it.
402
403 %TODO insert a figure for the Find dialog box
404
405
406 \section{Loading your own sequences}
407 \label{loadingseqs}
408 Jalview provides many ways to load your own sequences. %For this section of the tutorial you will need to download the file http://www.jalview.org/tutorial/alignment.fa to a suitable location on your hard drive.
409
410 \subsection{Drag and Drop}
411         In most operating systems you can just drag a file icon from a file browser
412         window and drop it on an open Jalview application window. The file will then be opened as a new alignment window. %You can try this with the tutorial file you have downloaded. When you have opened the file, close it again by selecting the close control on the window. If you drop an alignment file onto an open alignment window it will be appended
413 to that alignment. Drag and drop also works when loading data from a URL -
414 simply drag the link or url from the address panel of your browser on to an
415 alignment or the Jalview desktop background and Jalview will load data from the
416 URL directly.
417 %  (Figure \ref{drag})
418 % %[fig 5]
419 % \begin{figure}[htbp]
420 % \begin{center}
421 % \includegraphics[width=2in]{images/drag2.pdf}
422 % \includegraphics[width=2in]{images/drag3.pdf}
423 % \caption{{\bf An alignment can be opened by dragging the file onto the Jalview window. }}
424 % \label{drag}
425 % \end{center}
426 % \end{figure}
427
428 % %\includegraphics[width=2in]{images/drag1.pdf}
429
430
431 \subsection{From a File}
432         Jalview can read sequence alignments from a sequence alignment file. This is a text file, not a word processor document. For entering sequences from a wordprocessor document see Cut and Paste  (Section \ref{cutpaste}) below. Select {\sl File $\Rightarrow$ Input Alignment $\Rightarrow$ From File} from the main menu (Figure \ref{loadfile}). You will then get a file selection window where you can choose the file to open. Remember to select the appropriate file type. Jalview can automatically identify some sequence file formats.
433
434 %[fig 6]
435 \begin{figure}[htbp]
436 \begin{center}
437 \includegraphics[width=2in]{images/loadfilebox.pdf}
438 %\includegraphics[width=2in]{images/loadfilebox2.pdf}
439 \includegraphics[width=3in]{images/loadfileboxdrop.pdf}
440 \caption{{\bf Opening an alignment from a file saved on disk. }}
441 \label{loadfile}
442 \end{center}
443 \end{figure}
444
445 \subsection{From a URL}
446         Jalview can read sequence alignments directly from a URL. Please note that the files must be in a sequence alignment format - an HTML alignment or graphics file cannot be read by Jalview. 
447 Select {\sl File $\Rightarrow$ Input Alignment $\Rightarrow$ From URL} from the main menu and a window will appear asking you to enter the URL (Figure \ref{loadurl}). Jalview will attempt to automatically discover the file format.
448
449 %[fig 7]
450 \begin{figure}[htbp]
451 \begin{center}
452 \includegraphics[width=2in]{images/menuloadurl.pdf}
453 \includegraphics[width=3in]{images/loadurlbox.pdf}
454 \caption{{\bf Opening an alignment from a URL }}
455 \label{loadurl}
456 \end{center}
457 \end{figure}
458
459 \subsection{Cut and Paste}
460 \label{cutpaste}
461 Documents such as those produced by Microsoft Word cannot be readily understood
462 by Jalview. The way to read sequences from these documents is to select the
463 data from the document and copy it to the clipboard. There are two ways to
464 do this. One is to right-click on the desktop background, and select the
465 `Paste to new alignment' option in the menu that appears. The other is to select
466 {\sl File $\Rightarrow$ Input Alignment $\Rightarrow$ From Textbox} from the
467 main menu, and paste the sequences into the textbox window that will appear
468 (Figure \ref{loadtext}). In both cases, presuming that they are in the right
469 format, Jalview will happily read them into a new alignment window.
470 %[fig 8]
471
472 \begin{figure}[htbp]
473 \begin{center}
474 \includegraphics[width=2in]{images/menuloadtext.pdf}
475 \includegraphics[width=3in]{images/loadtextbox.pdf}
476 \caption{{\bf Opening an alignment from pasted text }}
477 \label{loadtext}
478 \end{center}
479 \end{figure}
480
481
482 \subsection{From a public database}
483 \label{fetchseq}
484 Jalview can retrieve sequences and sequence alignments from the public
485 databases housed at the European Bioinformatics Institute, such as Uniprot,
486 Pfam and the PDB, as well as any DAS sequence server registered at the
487 configured DAS registry. This facility avoids having to manually locate, save
488 and load the sequences, and allows Jalview to gather additional metadata
489 provided by the source, such as annotation and database cross references.
490 Select {\sl File $\Rightarrow$ Fetch Sequence(s) \ldots} from the main menu and
491 a window will appear (Figure \ref{loadseq}). Use the menu box to select the
492 appropriate database, enter one or several database IDs or accession numbers separated
493  by a semicolon and press OK. Jalview will then attempt to retrieve them from the chosen database. Example queries are provided for some 
494 databases to test that a source is operational, and can also be used as a guide 
495 for the type of accession numbers understood by the source.
496 %[fig 9]
497 \begin{figure}[htbp]
498 \begin{center}
499 \includegraphics[width=2.5in]{images/fetchseq.pdf}
500 \caption{{\bf Retrieving sequences from a public database}}
501 \label{loadseq}
502 \end{center}
503 \end{figure}
504   
505
506 \exercise{Loading sequences}{
507 \label{load}
508 \exstep{Start Jalview then close all windows by selecting {\sl Window $\Rightarrow$ Close All} from the main menu.}
509 \exstep{Select {\sl File $\Rightarrow$ Input Alignment $\Rightarrow$ From URL} from the main menu and enter \textsf{http://www.jalview.org/tutorial/alignment.fa} in the box. Click OK%jbp shouldn't this be sl
510 and the alignment should load.
511 }
512 \exstep{Close all windows using the {\sl Window $\Rightarrow$ Close All} main
513 menu option. Point your web browser at the same \href{http://www.jalview.org/tutorial/alignment.fa}{URL} and save the file to your desktop. Open this file in Jalview by selecting {\sl File $\Rightarrow$ Input Alignment $\Rightarrow$ From File} from the main menu and selecting the file from your desktop. Click OK and load the alignment.} 
514 \exstep{Select {\sl Window $\Rightarrow$ Close All} and drag the alignment.fa file from the desktop onto the Jalview window. The alignment should open. Try dragging onto an empty Jalview and onto an existing
515 alignment and observe the results. You can also try dragging the
516 \href{http://www.jalview.org/tutorial/alignment.fa}{URL} directly onto Jalview.
517 }
518 \exstep{ Select {\sl File $\Rightarrow$ Fetch Sequence(s).. } from the main menu. Select the PFAM seed database and enter the accession number PF03460. Click OK. An alignment of about 107 sequences should load. }
519 \exstep{Open the \href{http://www.jalview.org/tutorial/alignment.fa}{URL} above in a
520 web browser. Select and copy the entire text to the clipboard (usually {\sl via} the
521 browser's {\sl Edit $\Rightarrow$ Copy} menu option). Ensure Jalview is running
522 and select {\sl File $\Rightarrow$ Input Alignment $\Rightarrow$ From Textbox} .
523 Paste the clipboard into the large window using the {\sl Edit $\Rightarrow$
524 Paste} text box menu option. Click {\sl New Window} and the alignment will be
525 loaded. } } 
526
527 \subsection{Memory Limits}
528 \label{memorylimits}
529 Jalview is a Java program. One unfortunate implication of this is that it does
530 not allow Jalview to dynamically request additional memory from the operating
531 system. It is important, therefore, that you ensure that you have allocated
532 enough memory to work with your data. On most occasions, Jalview will warn you
533 when you have tried to load an alignment that is too big to fit in to memory (for
534 instance, some of the PFAM alignments are {\bf very} large). You can find out how
535 much memory is available to Jalview with the desktop window's {\sl $\Rightarrow$
536 Tools $\Rightarrow$ Show Memory Usage} function, which enables the display of the
537 currently available memory at the bottom left hand side of the Desktop window's
538 background. Should you need to increase the amount of memory available to
539 Jalview, full instructions are given in the built in documentation (opened by selecting {\sl Help $\Rightarrow$ Documentation})
540 and on the JVM memory parameters page (http://www.jalview.org/jvmmemoryparams.html) on
541 the website.
542
543
544 \section{Writing sequence alignments}
545 \label{savingalignments} \subsection{Saving the alignment} Jalview allows the
546 current sequence alignments to be saved to file so they can be restored at a
547 later date, passed to colleagues or analysed in other programs. From the
548 alignment window menu select {\sl File $\Rightarrow$ Save As} and a dialog box
549 will appear (Figure \ref{savealign}). You can navigate to an appropriate
550 directory in which to save the alignment. Jalview will remember the last filename
551 and format used to save (or load) the alignment, enabling you to quickly save
552 the file during or after editing by using the {\sl File $\Rightarrow$ Save} entry.
553
554 Jalview offers several different formats in which an alignment can be saved. The jalview format (.jar) is the only one which will preserve the colours, groupings and similar information in the alignment. The other formats produce text files containing just the sequences with no visualization information, although some allow limited annotation and sequence features to be stored (e.g. AMSA). Unfortunately only Jalview can read Jalview files. The {\sl File $\Rightarrow$ Output To Textbox} menu option allows the alignment to be copied and pasted into other documents or web servers. 
555
556 %[fig 10]
557 \begin{figure}[htbp]
558 \begin{center}
559 \parbox[c]{1.0in}{
560 \includegraphics[width=1.0in]{images/saveas.pdf}
561 }
562 \parbox[c]{4in}{
563 \includegraphics[width=4in]{images/saveas2.pdf}
564 }
565 \caption{{\bf Saving alignments in Jalview to disk}}
566 \label{savealign}
567 \end{center}
568 \end{figure}
569
570 \subsection{Jalview Projects}
571 \parbox[c]{4in}{If you wish to save the complete Jalview session rather than just one alignment (e.g. because you have calculated trees or multiple different alignments) then your work should be saved as a Jalview Project file\footnote{Tip: Ensure that you have allocated plenty of memory to Jalview when working with large alignments in Jalview projects. See Section \protect \ref{memorylimits} above for how to do this.}.
572 From the main menu select {\sl File $\Rightarrow$ Save Project} and a file save dialog box will appear. Loading a project will restore Jalview to exactly the view at which the file was saved, complete with all alignments, trees, annotation and displayed structures rendered appropriately.
573 }
574 \parbox[c]{2in}{
575 \centerline {
576 \includegraphics[width=1.5in]{images/saveproj.pdf}
577 }}
578
579 \exercise{Saving Alignments}{
580 \label{save}
581 \exstep{Start Jalview, close all windows and load the ferredoxin alignment from
582 PFAM (PFAM seed accession number PF03460 (see Exercise \ref{load}). }
583 \exstep{
584 Select {\sl File $\Rightarrow$ Save As} from the alignment window menu. Choose a location into which to save the alignment and select a format. All formats except {\sl  Jalview } can be viewed in a normal text editor (e.g. Notepad) or in a web browser. Enter a file name and click {\sl Save}. Check this file by closing all windows and opening it with Jalview or by
585 browsing to it with your web browser.
586 }
587 \exstep{ Repeat the previous step trying different file formats.}
588 \exstep{Select {\sl File $\Rightarrow$ Output to Textbox $\Rightarrow$ FASTA}. You can select and copy this alignment to the clipboard using the textbox menu options {\sl Edit $\Rightarrow$ Select All} followed by {\sl Edit $\Rightarrow$ Copy}. The alignment can then be pasted into any application of choice, e.g. a word processor or web form.
589 }
590 \exstep{Ensure at least one alignment window is shown in Jalview. Open the
591 overview window and scroll to any part of the alignment. Select {\sl File
592 $\Rightarrow$ Save Project} from the main menu and save in a suitable place.
593 Close all windows and then load the project {\sl via} the {\sl File $\Rightarrow$ Load Project} menu option. Note how all the windows and positions  are exactly as they were when they were saved. } }
594
595
596 \section{Selecting and editing sequences}
597 \label{selectingandediting} 
598 Jalview makes extensive use of selections - most of the commands available from
599 its menus operate on the {\sl currently selected region} of the alignment, either to
600 change their appearance or perform some kind of analysis. This section
601 illustrates how to make and use selections and groups.
602
603 \subsection{Selecting parts of an alignment}
604 Selections can be of arbitrary regions in an alignment, one or more complete columns, or one or more complete sequences.
605  
606 A selected region can be copied and pasted as a new alignment using the {\sl Edit $\Rightarrow$ Copy} and {\sl Edit $\Rightarrow$ Paste $\Rightarrow$ To New Alignment}  in the alignment window menu options.
607
608 To clear (unselect)  the selection press the [ESC] (escape) key.
609
610 \subsubsection{Selecting arbitrary regions}
611 To select part of an alignment, place the mouse at the top left corner of the region you wish to select. Press and hold the mouse button and drag the mouse to the bottom right corner of the chosen region then release the mouse button. A dashed red box appears around the selected region (Figure \ref{select}). 
612 %[fig 12]
613
614 \begin{figure}[htbp]
615 \begin{center}
616 \includegraphics[width=4in]{images/select1.pdf}
617 \caption{{\bf Selecting a region in an alignment}}
618 \label{select}
619 \end{center}
620 \end{figure}
621
622 \subsubsection{Selecting columns}
623 To select the same residues in all sequences, click and drag along the alignment ruler. This selects the entire height of the alignment. Ranges of positions can also be selected by clicking on the first position then holding down the [SHIFT] key whilst clicking the other end of the selection. Discontinuous regions can be selected by holding down [CTRL] and clicking on positions to add to the column selection. Note that each [CTRL]-Click changes the current selected sequence region to that column, but adds to the column selection. Selected columns are indicated by red highlighting in the ruler bar (Figure \ref{selectcols}).
624 %[fig 13]
625
626 \begin{figure}[htbp]
627 \begin{center}
628 \includegraphics[width=4in]{images/select2.pdf}
629 \caption{{\bf Selecting multiple columns in an alignment.} The red highlighting
630 on the alignment ruler marks the selected columns. Note that only the most
631 recently selected column has a dashed-box around it to indicate a region
632 selection. }
633 \label{selectcols}
634 \end{center}
635 \end{figure}
636
637 \subsubsection{Selecting sequences}
638
639 \begin{figure}[htb]
640 \begin{center}
641 \includegraphics[width=4in]{images/select3.pdf}
642 \caption{{\bf Selecting multiple sequences in an alignment.} Use [CTRL] or [SHIFT] to select many sequences at once.}
643 \label{selectrows}
644 \end{center}
645 \end{figure}
646
647 To select multiple complete sequences, click and drag the mouse down the
648 sequence ID panel. The same technique as used for columns above can be used with [SHIFT]-Click for continuous and [CTRL]-Click to select discontinuous ranges of sequences (Figure \ref{selectrows}).
649 %[fig 14]
650
651 \subsubsection{Making selections in Cursor mode}
652
653 To define a selection in cursor mode (which is enabled by pressing [F2] when the alignment window is selected),
654 navigate to the top left corner of the proposed selection (using the mouse, the arrow keys, or the keystroke
655 commands described in Section \ref{cursormode}). Pressing the [Q] key marks this as the
656 corner. A red outline appears around the cursor (Figure \ref{cselect})
657
658 Navigate to the bottom right corner of the proposed selection and press the [M] key. This marks the bottom right corner of the selection. The selection can then be treated in the same way as if it had been created in normal mode.
659
660 \begin{figure}[htbp]
661 \begin{center}
662 \includegraphics[width=1.5in]{images/csel1.pdf}
663 \includegraphics[width=1.5in]{images/csel2.pdf}
664 \includegraphics[width=1.5in]{images/csel3.pdf}
665 \includegraphics[width=1.5in]{images/csel4.pdf}
666 \caption{{\bf Making a selection in cursor mode.} Navigate to the top left corner (left), press [Q] (left center), navigate to the bottom right corner (right center) and press [M] (right)}
667 \label{cselect}
668 \end{center}
669 \end{figure}
670
671 \subsubsection{Inverting the current selection}
672
673 The current sequence or column selection can be inverted, using  {\sl Select
674 $\Rightarrow$ Invert Sequence/Column Selection} in the alignment window.
675 Inverting the selection is useful when selecting large regions in an alignment, 
676 simply select the region that is to be kept unselected, and then invert the selection.
677 This may also be useful when hiding large regions in an alignment (see Section \ref{hidingregions} below).
678 Instead of selecting the columns and rows that are to be hidden, simply select the region that is to be kept
679 visible, invert the selection, then select {\sl View $\Rightarrow$ Hide
680 $\Rightarrow$ Selected Region }.
681
682 \subsection{Creating groups}
683 Selections are lost as soon as a different region is selected. Groups can be
684 created which are labeled regions of the alignment. To create a group, first
685 select the region which is to comprise the group. Then click the right mouse
686 button on the selection to bring up a context menu. Select {\sl Selection
687 $\Rightarrow$ Group $\Rightarrow$ Edit name and description of
688 current group}\footnote{In earlier versions of Jalview, this entry was variously
689 `Group', `Edit Group Name', or `JGroupXXXXX' (Where XXXXX was some serial
690 number).} then enter a name for the group in the dialogue box which appears.
691
692 \begin{figure}
693 \begin{center}
694 \includegraphics[width=3in]{images/group1.pdf}
695 \includegraphics[width=1.5in]{images/newgroup.pdf}
696 \caption{{\bf Creating a new group from a selection}}
697 \label{makegroup}
698 \end{center}
699 \end{figure}
700
701 By default the new group will have a box drawn around it. The appearance of the group can be changed (see Section \ref{colours} below). This group will stay defined even when the selection is removed.
702
703 \subsection{Exporting the current selection}
704
705 The current selection can be copied to the clipboard (in PFAM format). It can also be output to a textbox using the output functions in the pop-up menu obtained by right clicking the current selection. The textbox enables quick manual editing of the alignment prior to importing it into a new window (using the [New Window] button) or saving to a file with the {\sl File $\Rightarrow$ Save As } pulldown menu option from the text box.
706
707
708 \exercise{Making selections and groups}{
709 \label{exselect}
710 \exstep{Close all windows in  Jalview and load the ferredoxin alignment (PFAM
711 ID PF03460). Choose a residue and  place the mouse cursor on it. Click and drag the mouse cursor to create a selection. As you drag, a red box will `rubber band' out to show the extent of the selection. Release the mouse button and a red box should border the selected region. Now press [ESC] to clear the selection.} \exstep{
712 Select one sequence by clicking on the ID panel. Note that the sequence ID takes on a highlighted background and a red box appears around the selected sequence. Now hold down [SHIFT] and click another sequence ID a few positions above or below. Note how the selection expands to include all the sequences between the two positions on which you clicked.
713 Now hold down [CTRL] and click on several sequences ID's both selected and unselected. Note how unselected IDs are individually added to the selection and previously selected IDs are individually deselected. 
714 }
715 \exstep{ Repeat the step above but selecting columns by clicking on the ruler bar instead of selecting rows by clicking on the sequence ID.
716 }
717 \exstep{Press [F2] to enter Cursor mode. Navigate to column 59, row 1 by pressing {\sl 5 9 , 1 [RETURN]}. Press {\sl Q} to mark this position. Now navigate to column 65, row 8 by pressing {\sl 6 5 , 8 [RETURN]}. Press {\sl M} to complete the selection.}
718 \exstep{\label{exselectgrpcolour}Open the popup menu by right-clicking the
719 selected region with the mouse. Open the {\sl Selection $\Rightarrow$ Group $\Rightarrow$ Group Colour } menu and select `Percentage Identity'. This will turn the selected region into a group and colour it accordingly.}
720 \exstep{Hold down [CTRL] and use the mouse to select and deselect sequences by clicking on their Sequence ID label. Note how the group expands to include newly selected sequences, and the `Percentage Identity' colouring changes. }
721 \exstep{
722 Use the mouse to click and drag the right-hand edge of the selected group. Note again how the group resizes.}
723
724 \exstep{
725 Right click on the text area to open the selection popup-menu. Follow the menus and pick an output format from the {\sl Selection $\Rightarrow$ Output to Textbox \ldots} submenu. 
726 }
727 \exstep{Try manually editing the alignment and then press the [New Window] button to import the file into a new alignment window.}
728
729 % more? change colouring style. set border colour.
730 }
731
732 \subsection{Reordering the alignment}
733 Sequence reordering is simple. Highlight the sequences to be moved then press the up or down arrow keys as appropriate (Figure \ref{reorder}). If you wish to move a sequence up past several other sequences it is often quicker to select the group past which you want to move it and then move the group rather than the individual sequence.
734
735 \begin{figure}[htbp]
736 \begin{center}
737 \includegraphics[width=3in]{images/move1.pdf}
738 \includegraphics[width=3in]{images/move2.pdf}
739 \caption{{\bf Reordering the alignment.} The selected sequence moves up one position on pressing the $\uparrow$ key}
740 \label{reorder}
741 \end{center}
742 \end{figure}
743
744 \exercise{Reordering the alignment}{
745 \exstep{Open an alignment (e.g.the PFAM domain PF03460). Select one sequence. Using the up and down arrow keys, alter its position in the alignment. Note that this will not work in cursor mode.
746 }
747 \exstep{Hold [CTRL] and select two sequences separated by one or more un-selected sequences. Note how multiple sequences are grouped together when they are re-ordered using the up and down arrow keys.
748 }
749 }
750
751
752 \subsection{Hiding regions}
753 \label{hidingregions}
754 It is sometimes convenient to exclude some sequences or residues in the alignment without actually deleting them. Jalview allows sequences or alignment columns within a view to be hidden, and this facility has been used to create the several different views in the example alignment file that is loaded when Jalview is first started (See Figure \ref{startpage}).
755
756 To hide a set of sequences, select them and right-click the mouse on the selected sequence IDs to bring up the context menu. Select {\sl Hide Sequences} and the sequences will be concealed, with a small blue triangle indicating their position (Figure \ref{hideseq}). To unhide (reveal) the sequences, right click on the triangle and select {\sl Reveal Sequences} from the context menu.
757
758
759  \begin{figure}[htbp]
760 \begin{center}
761 \includegraphics[width=1.5in]{images/hide1.pdf}
762 \includegraphics[width=2.5in]{images/hide2.pdf}
763 \includegraphics[width=1.75in]{images/hide3.pdf}
764 \caption{{\bf Hiding Sequences} Hidden sequences are represented by a small blue triangle in the sequence ID panel}
765 \label{hideseq}
766 \end{center}
767 \end{figure}
768
769 A similar mechanism applies to columns (Figure \ref{hidecol}). Selected columns (indicated by a red marker) can be hidden and revealed in the same way {\sl via} the context menu by right clicking on the ruler bar. The hidden column selection is indicated by a small blue triangle in the ruler bar.
770
771  \begin{figure}[htbp]
772 \begin{center}
773 \includegraphics[width=2in]{images/hide4.pdf}
774 \includegraphics[width=3in]{images/hide5.pdf}
775 \includegraphics[width=1in]{images/hide6.pdf}
776 \caption{{\bf Hiding Columns} Hidden columns are represented by a small blue triangle in the ruler bar}
777 \label{hidecol}
778 \end{center}
779 \end{figure}
780
781 It is often easier to select the region that you intend to work with, rather
782 than the regions that you want to hide. In this case, select the required region and use the {\sl View $\Rightarrow$ Hide
783 $\Rightarrow$ All but Selected Region } menu entry, or press [Shift]+[Ctrl]+H
784 to hide the unselected region.
785
786 \subsubsection{Representing a group with a single sequence}
787
788 Instead of hiding a group completely, it is sometimes useful to work with just one representative sequence. The {\sl $<$Sequence ID$>$ $\Rightarrow$ Represent group with $<$Sequence ID$>$ } option from the sequence ID pop-up menu enables this variant of the hidden groups function. The remaining representative sequence can be visualized and manipulated like any other. However, any alignment edits that affect the sequence will also affect the whole sequence group. 
789
790 \exercise{Hiding and revealing regions}{
791 \exstep{Close all windows then open the PFAM accession PF03460. Select a contiguous set of sequences by clicking and dragging on the sequence ID panel. Right click on the selected sequence IDs and select {\sl Hide Sequences}.
792 }
793 \exstep{
794 Right click on the blue triangle indicating hidden sequences and select {\sl Reveal Sequences}. (If you have hidden all sequences then you will need to use the alignment window menu option {\sl View $\Rightarrow$ Show $\Rightarrow$ All Sequences.})
795 }
796 \exstep{
797 Repeat but using a non-contiguous set of sequences. Note that when multiple regions are hidden there are two options, {\sl Reveal Sequences} and {\sl Reveal All}.
798 }
799 \exstep{Repeat the above but hiding and revealing columns instead of sequences.
800 }
801 \exstep{Select a region of the alignment, add in some additional columns to the
802 selection, and experiment with the `Hide all but selected region' function. }
803 \exstep{Select some sequences and pick one to represent the rest. Bring up the sequence ID pop-up menu for that sequence and select the {\sl Represent group with $<$Sequence ID$>$ } option. Use the pop-up menu again to reveal the hidden sequences that you just picked a representative for.}
804 }
805
806
807
808
809 \subsection{Introducing and removing gaps}
810
811 The alignment view provides an interactive editing interface, allowing gaps to be inserted or deleted to the left of any position in a sequence or sequence group. Alignment editing can only be performed whilst in keyboard editing mode (entered by pressing [F2]) or by clicking and dragging residues with the mouse when [SHIFT] or [CTRL] is held down (which differs from earlier versions of Jalview).
812
813 \subsubsection{Locked Editing}
814 \label{lockededits}
815 The Jalview alignment editing model is different to that used in other alignment
816 editors. Because edits are restricted to the insertion and deletion of gaps to the left of a particular sequence position, editing has the effect of shifting the rest of the sequence(s) being edited down or up-stream with respect to the rest of alignment. The {\sl Edit $\Rightarrow$ Pad Gaps} option can be enabled to eliminate `ragged edges' at the end of the alignment, but does not avoid the `knock-on' effect which is sometimes undesirable. However, its effect can be limited by performing the edit within a selected region. In this case, gaps will only be removed or inserted within the selected region. Edits are similarly constrained when they occur adjacent to a hidden column.
817
818 \subsubsection{Introducing gaps in a single sequence}
819
820 To introduce a gap, place the cursor on the residue to the immediate right of where the gap should appear. Hold down the SHIFT key and the left mouse button, then drag the sequence to the right till the required number of gaps has been inserted.
821
822 One common error is to forget to hold down [SHIFT]. This results in a selection which is one sequence high and one residue long. Gaps cannot be inserted in such a selection. The selection can be cleared and editing enabled by pressing the [ESC] key.
823
824 \subsubsection{Introducing gaps in all sequences of a group}
825
826 To insert gaps in all sequences in a selection or group, place the mouse cursor on any residue in the selection or group to the immediate right of the position in which a gap should appear. Hold down the CTRL key and the left mouse button, then drag the sequences to the right until the required number of gaps has appeared.
827
828 Gaps can be removed by dragging the residue to the immediate right of the gap
829 leftwards whilst holding down [SHIFT] (for single sequences) or [CTRL] (for a group of sequences).
830 \subsubsection{Sliding Sequences}
831
832 Pressing the [$\leftarrow$] or [$\rightarrow$] arrow keys when one or more
833 sequences are selected will ``slide'' the selected sequences to the left or
834 right (respectively). Slides occur regardless of the region selection -
835 which, for example, allows you to easily reposition misaligned subfamilies
836 within a larger alignment.
837
838 \subsubsection{Undoing edits}
839 Jalview supports the undoing of edits {\sl via} the {\sl Edit $\Rightarrow$ Undo Edit}
840 alignment window menu option, or CTRL-Z. An edit, if undone, may be re-applied
841 with {\sl Edit $\Rightarrow$ Redo Edit}, or CTRL-Y. Note, however, that the
842 {\sl Undo} function only works for edits to the alignment or sequence ordering.
843 Colouring of the alignment, showing and hiding of sequences or modification of
844 annotation cannot be undone.
845
846
847 % % better idea to introduce hiding sequences, and use the invert selection, hide
848 % others, to simplify manual alignment construction
849 \exercise{Editing alignments}{
850 \label{mousealedit}
851 % TODO: VERIFY FOR 2.6.1 and 2.7 - NUMBERING/INSTRUCTIONS APPEAR OFF
852 {You are going to manually reconstruct part of the example Jalview alignment
853  available at
854  \href{http://www.jalview.org/examples/exampleFile.jar}{http://www.jalview.org/examples/exampleFile.jar}.
855
856  \item{Remember to use [CTRL]+Z to undo an edit, or the {\tr File $\Rightarrow$
857  Reload } function to revert the alignment back to the original version if you
858  want to start again.}
859  \item{ If you are using OSX, and a key combination - such as [CTRL]+A - does
860  not work, then try pressing the [CMD] key instead of [CTRL].
861  }
862
863 \exstep{ Load the URL
864 \textsf{http://www.jalview.org/tutorial/unaligned.fa} which contains part of the
865 ferredoxin alignment from PF03460.
866 }
867
868 \exstep{ Select the first 7 sequences, and press H to hide them (or right click
869 on the sequence IDs to open the sequence ID popup menu, and select {\tr Hide
870 Sequences}). }
871
872 \exstep{ Select FER3\_RAPSA and FER\_BRANA. Slide the sequences to
873 the left so the initial {\bf A} lies at column 57 using the $\Rightarrow$ key.}
874
875 \exstep{ Select FER1\_SPIOL, FER1\_ARATH, FER2\_ARATH, Q93Z60\_ARATH and
876 O80429\_MAIZE (Hint: you can do this by pressing [CTRL]-I to invert the sequence selection and then
877 deselect FER1\_MAIZE), and use the $\Rightarrow$ key to slide them to so they
878 begin at column 5 of the alignment view.} 
879
880 \exstep{ Select all the visible
881 sequences in the block by pressing [CTRL]-A. Insert a single gap in all selected
882 sequences at column 38 by holding [CTRL] and clicking on the R in FER1\_SPIOL and
883 dragging one column to right. Insert another gap at column 47 in all sequences in
884 the same way.}
885
886 \exstep{ Correct the ferredoxin domain alignment for FER1\_SPIOL by
887 inserting two additional gaps after the gap at column 47: First press [ESC] to
888 clear the selection, then hold [SHIFT] and click and drag on the G and move it
889 two columns to the right.}
890
891 \exstep{ Now complete the
892 alignment of FER1\_SPIOL with a {\bf locked edit} by pressing [ESC] and select
893 columns 47 to 57 of the FER1\_SPIOL row. Move the mouse onto the G at column 50,
894 hold [SHIFT] and drag the G to the left by one column to insert a gap at column
895 57.}
896
897 \exstep{ In the next two steps you will complete the alignment of the last two sequences.
898
899 Select the last two sequences (FER1\_MAIZE and O80429\_MAIZE), then press [SHIFT]
900 and click and drag the initial methionine of O80429\_MAIZE 5 columns to the right
901 so it lies at column 10. Keep holding [SHIFT] and click and drag to insert
902 another gap at the proline at column 25 (25C in cursor mode). Remove the gap at
903 column 44, and insert 4 gaps at column 47 (after AAPM).}
904
905 \exstep{ Hold [SHIFT] and drag the I at column 39 of FER1\_MAIZE 2 columns to the
906 right. Remove the gap at FER1\_MAIZE column 49 by [SHIFT]+click and drag left by
907 one column. Press [ESC] to clear the selection, and then insert three gaps in
908 FER1\_MAIZE at column 47 by holding [SHIFT] and click and drag the S in FER1\_MAIZE to the right by three columns. Finally,
909 remove the gap in O80429\_MAIZE at column 56 using [SHIFT]-drag to the left on
910 56C.}
911
912 \exstep{ Use the
913 {\sl Edit $\Rightarrow$ Undo Edit} and {\sl Edit $\Rightarrow$ Redo Edit} menu
914 option, or their keyboard shortcuts ([CTRL]+Z and [CTRL]+Y) to step 
915 backwards and replay the edits you have made.}
916
917 }
918
919 \begin{figure}[htb]
920 \begin{center}
921 \includegraphics[width=3in]{images/edit1.pdf}
922 \includegraphics[width=3in]{images/edit2.pdf}
923 \caption{{\bf Introducing gaps in a single sequence.} Gaps are introduced as the
924 selected sequence is dragged to the right while pressing and holding [SHIFT].}
925 \label{gapseq}
926 \end{center}
927 \end{figure}
928
929 \begin{figure}[htb]
930 \begin{center}
931 \includegraphics[width=3in]{images/edit3.pdf}
932 \includegraphics[width=3in]{images/edit4.pdf}
933 \caption{{\bf Introducing gaps in a group.} Gaps are introduced as the selected
934 group is dragged to the right with [CTRL] pressed.}
935 \label{gapgroup}
936 \end{center}
937 \end{figure}
938
939
940 \subsubsection{Editing in Cursor mode}
941
942 Gaps can be be easily inserted when in cursor mode (toggled with [F2]) by pressing [SPACE]. Gaps will be inserted at the cursor, shifting the residue under the cursor to the right. To insert {\sl n} gaps type {\sl n} and then press [SPACE]. To insert gaps into all sequences of a group, use [CTRL]-[SPACE] or [SHIFT]-[SPACE] (both keys held down together).
943
944 Gaps can be removed in cursor mode by pressing [BACKSPACE]. First make sure you have everything unselected by pressing ESC. The gap under the cursor will be removed. To remove {\sl n} gaps, type {\sl n} and then press [BACKSPACE]. Gaps will be deleted up to the number specified. To delete gaps from all sequences of a group, press [CTRL]-[BACKSPACE] or [SHIFT]-[BACKSPACE] (both keys held down together). Note that the deletion will only occur if the gaps are in the same columns in all sequences in the selected group, and those columns are to the right of the selected residue.
945
946 \exercise{Keyboard edits}{
947 \item{This continues on from exercise \ref{mousealedit}, and recreates the final
948 part of the example ferredoxin alignment from the unaligned sequences using
949 Jalview's keyboard editing mode. Note that using the [SHIFT]-[SPACE] command should have the same effect as the [CTRL]-[SPACE] command mentioned in this exercise.}
950
951 \exstep{Load the
952 sequence alignment at \textsf{http://www.jalview.org/tutorial/unaligned.fa}, or continue using the edited alignment from exercise \ref{mousealedit}.  If you continue from the previous exercise, then first right click on the sequence ID panel and select {\tr Reveal All}.
953
954 Now, enter cursor mode by pressing [F2]}
955 %TODO: BACKSPACE or DELETE WHEN SEQS ARE SELECTED WILL DELETE ALL SEQS JAL-783
956 \exstep{Insert 58 gaps at the start of the first sequence (FER\_CAPAA). Press {\sl 58} then {\sl [SPACE]}. }
957 \exstep{Go down one sequence and select rows 2-5 as a block. Click on the second sequence ID (FER\_CAPAN). Hold down shift and click on the fifth (FER1\_PEA). }
958 \exstep{Insert 6 gaps at the start of this group. Go to column 1 row 2 by typing {\sl 1,2} then pressing {\sl [RETURN]}. Now insert 6 gaps. Type {\sl 6} then hold down {\sl [CTRL]} and press {\sl [SPACE]}.}
959 \exstep{Now insert one gap at column 34 and another at 38. Insert 3 gaps at 47. Press {\sl 34C} then 
960 {\sl [CTRL]-[SPACE]}.  Press {\sl 38C} then [CTRL]-[SPACE]. Press {\sl 47C} then {\sl 3 [CTRL-SPACE]} the first through fourth sequences are now aligned.} 
961 \exstep{The fifth sequence (FER1\_PEA) is poorly aligned. We will delete some gaps and add some new ones. Press {\sl [ESC]} to clear the selection. Navigate to the start of sequence 5 and delete 3 gaps. Press {\sl 1,5 [RETURN]} then {\sl 3 [BACKSPACE]} to delete three gaps. Go to column 31 and delete the gap. Press {\sl 31C [BACKSPACE]} .}
962 \exstep{ Similarly delete the gap now at column 34, then insert two gaps at column 38. Press {\sl 34C [BACKSPACE]  38C 2 [SPACE]}. Delete three gaps at column 44 and insert one at column 47 by pressing {\sl 44C 3 [BACKSPACE] 47C [SPACE]}.  The top five sequences are now aligned.}
963 }
964
965 \section{Colouring sequences}
966 \label{colours}
967
968 Colouring sequences is a key aspect of alignment presentation. Jalview allows
969 you to colour the whole alignment, or just specific groups. Alignment and
970 group colours are rendered
971 {\sl below} any other colours, such as those arising from sequence features
972 (these are described in Section \ref{featannot}). This means that if you
973 try to apply one of the colourschemes described in this section, and nothing
974 appears to happen, it may be that you have sequence feature annotation
975 displayed, and you may have to disable it using the {\sl View $\Rightarrow$
976 Show Features} option before you can see your colourscheme.
977
978 There are two main types of colouring styles: simple static residue colourschemes and dynamic schemes which use conservation and consensus analysis to control colouring. A hybrid colouring is also possible, where static residue schemes are modified using a dynamic scheme. The individual schemes are described in Section \ref{colscheme} below.
979
980 \subsection{Colouring the whole alignment}
981
982 \parbox[c]{3.75in}{The alignment can be coloured {\sl via} the {\sl Colour} menu option in the alignment window. Selecting the colour scheme causes all residues to be coloured. The menu is divided into three sections. The first section gives options for the behaviour of the menu options, the second lists static and dynamic colourschemes available for selection. The last gives options for making hybrid colourschemes using conservation shading or colourscheme thresholding. 
983
984 }\parbox[c]{3in}{
985 \centerline {
986 \includegraphics[width=2.5in]{images/colour2.pdf}
987 }
988 }
989
990 \subsection{Colouring a group or selection}
991
992 Selections or groups can be coloured in two ways. The first is {\sl via} the Alignment Window's {\sl Colour} menu as stated above, after first ensuring that the {\sl Apply Colour To All Groups} flag is not selected. This must be turned {\sl off} specifically as it is {\sl on} by default. When unticked, selections from the Colours menu will only change the colour for residues in the current selection, or the alignment view's ''background colourscheme'' when no selection exists.
993
994 The second method is to use the  {\sl Selection $\Rightarrow$ Group $\Rightarrow$ Group Colour}  context menu option obtained by right clicking on the group (Figure \ref{colgrp}). This only changes the colour of the current selection or group.
995
996 \begin{figure}[htbp]
997 \begin{center}
998 %TODO update group_col.pdf to show latest jalview group edit submenu
999 \includegraphics[width=4in]{images/group_col.pdf}
1000 \caption{{\bf Colouring a group via the context menu.}}
1001 \label{colgrp}
1002 \end{center}
1003 \end{figure}
1004
1005 \subsection{Shading by conservation}
1006 For many colour schemes, the intensity of the colour in a column can be scaled
1007 by the degree of amino acid property conservation. Selecting {\sl Colour
1008 $\Rightarrow$ By Conservation} enables this mode, and {\sl Modify
1009 Conservation Threshold...} brings up a selection box (the {\sl Conservation
1010 Colour Increment} dialog box) allowing the alignment colouring to be modified.
1011 Selecting a higher value limits colouring to more highly conserved columns (Figure \ref{colcons}).
1012
1013  \begin{figure}[htbp]
1014 \begin{center}
1015 \includegraphics[width=2in]{images/colourcons1.pdf}
1016 \includegraphics[width=2in]{images/colourcons3.pdf}
1017 \includegraphics[width=2in]{images/colourcons5.pdf}
1018 \caption{{\bf Conservation Shading} The density of the ClustalX style residue colouring is controlled by the conservation threshold. The effect of 0\% (left), 50\% (center) and 100\% (right) thresholds are shown.
1019 }
1020 \label{colcons}
1021 \end{center}
1022 \end{figure}
1023
1024 \subsection{Thresholding by percentage identity}
1025
1026 `Thresholding' is another hybrid colour model where a residue is only coloured
1027 if it is not excluded by an applied threshold. Selecting {\sl Colour $\Rightarrow$ Above Identity Threshold} brings up a selection box with a slider controlling the minimum percentage identity threshold to be applied. Selecting a higher threshold (by sliding to the right) limits the colouring to columns with a higher percentage identity (as shown by the Consensus histogram in the annotation panel).
1028
1029 \subsection{Colouring by Annotation}
1030 \label{colourbyannotation}
1031 \parbox[c]{3in}{
1032 Any of the quantitative annotations shown on an alignment can be used to
1033 threshold or shade the whole alignment\footnote{Please remember to turn off
1034 Sequence Feature display to see the shading}. The {\sl Colour $\Rightarrow$ By
1035 Annotation} options opens a dialog which allows you to select which annotation
1036 to use, the minimum and maximum shading colours or whether the original
1037 colouring should be thresholded (the `Use original colours' option). 
1038
1039 Default settings for the minimum and maximum colours can be set in the Jalview
1040 Desktop's preferences. }\parbox[c]{3in}{
1041 \centerline{\includegraphics[width=2.5in]{images/col_byannot.pdf}}}
1042 \subsection{Colour schemes} 
1043
1044 \label{colscheme}
1045 Full details on each colour scheme can be found in the Jalview on-line help. A brief description of each one is provided below:
1046
1047 \subsubsection{ClustalX}
1048
1049
1050  \parbox[c]{3.5in}{This is an emulation of the default colourscheme used for alignments in ClustalX, a graphical interface for the ClustalW multiple sequence alignment program. Each residue in the alignment is assigned a colour if the amino acid profile of the alignment at that position meets some minimum criteria specific for the residue type. }
1051 \parbox[c]{3in}{\includegraphics[width=2.75in]{images/col_clustalx.pdf}}
1052
1053 \subsubsection{Blosum62}
1054
1055 \parbox[c]{3.5in}{Gaps are coloured white. If a residue matches the consensus sequence residue at that position it is coloured dark blue. If it does not match the consensus residue but the Blosum62 matrix gives a positive score, it is coloured light blue.}
1056 \parbox[c]{3in}{
1057 \includegraphics[width=2.75in]{images/col_blosum62.pdf}
1058 }
1059
1060 \subsubsection{Percentage Identity}
1061 \parbox[c]{3.5in}{
1062 The Percent Identity  option colours the residues (boxes and/or text) according to the percentage of the residues in each column that agree with the consensus sequence. Only the residues that agree with the consensus residue for each column are coloured.
1063 }
1064 \parbox[c]{3in}{
1065 \includegraphics[width=2.75in]{images/col_percent.pdf}
1066 }
1067
1068 \subsubsection{Zappo}
1069 \parbox[c]{3.5in}{
1070 The residues are coloured according to their physicochemical properties. The physicochemical groupings are Aliphatic/hydrophobic, Aromatic, Positive, Negative, Hydrophillic, conformationally special, and Cyst(e)ine.
1071 }
1072 \parbox[c]{3in}{
1073 \includegraphics[width=2.75in]{images/col_zappo.pdf}
1074 }
1075
1076 \subsubsection{Taylor}
1077
1078 \parbox[c]{3.5in}{
1079 This colour scheme was devised by Willie Taylor and an entertaining description of it's origin can be found in Protein Engineering, Vol 10 , 743-746 (1997)
1080 }
1081 \parbox[c]{3in}{
1082 \includegraphics[width=2.75in]{images/col_taylor.pdf}
1083 }
1084
1085 \subsubsection{Hydrophobicity}
1086 \parbox[c]{3.5in}{
1087 Residues are coloured according to the hydrophobicity table of Kyte, J., and Doolittle, R.F., J. Mol. Biol. 1157, 105-132, 1982. The most hydrophobic residues are coloured red and the most hydrophilic ones are coloured blue.
1088 }
1089 \parbox[c]{3in}{
1090 \includegraphics[width=2.75in]{images/col_hydro.pdf}
1091 }
1092
1093 \subsubsection{Helix Propensity}
1094
1095 \parbox[c]{3.5in}{
1096 The residues are coloured according to their Chou-Fasman\footnote{\label{chou-fasman}Chou, PY and Fasman, GD. Annu Rev Biochem. 1978;47:251-76.} helix propensity. The highest propensity is magenta, the lowest is green.
1097 }
1098 \parbox[c]{3in}{
1099 \includegraphics[width=2.75in]{images/col_helix.pdf}
1100 }
1101
1102 \subsubsection{Strand Propensity}
1103
1104 \parbox[c]{3.5in}{
1105 The residues are coloured according to their Chou-Fasman\textsuperscript{\ref{chou-fasman}} Strand propensity. The highest propensity is Yellow, the lowest is blue.
1106 }
1107 \parbox[c]{3in}{
1108 \includegraphics[width=2.75in]{images/col_strand.pdf}
1109 }
1110
1111
1112
1113 \subsubsection{Turn Propensity}
1114 \parbox[c]{3.5in}{
1115 The residues are coloured according to their Chou-Fasman\textsuperscript{\ref{chou-fasman}} turn propensity. The highest propensity is red, the lowest is cyan.
1116 }
1117 \parbox[c]{3in}{
1118 \includegraphics[width=2.75in]{images/col_turn.pdf}
1119 }
1120
1121 \subsubsection{Buried Index}
1122 \parbox[c]{3.5in}{
1123 The residues are coloured according to their Chou-Fasman\textsuperscript{\ref{chou-fasman}} burial propensity. The highest propensity is blue, the lowest is green.
1124 }
1125 \parbox[c]{3in}{
1126 \includegraphics[width=2.75in]{images/col_buried.pdf}
1127 }
1128  
1129
1130 \subsubsection{Nucleotide}
1131 \parbox[c]{3.5in}{
1132 Residues are coloured with four colours corresponding to the four nucleotide bases. All non ACTG residues are uncoloured. See Section \ref{workingwithnuc} for further information about working with nucleic acid sequences and alignments.
1133 }
1134 \parbox[c]{3in}{
1135 \includegraphics[width=2.75in]{images/col_nuc.pdf}
1136 }
1137
1138
1139
1140 \exercise{Colouring Alignments}{ 
1141 \exstep{
1142 Open a sequence alignment, for example the PFAM domain PF03460. Select the alignment menu option {\sl Colour $\Rightarrow$ ClustalX}. Note the colour change. Now try all the other colour schemes in the {\sl Colour} menu. Note that some colour schemes do not colour all residues.
1143 }
1144 \exstep{
1145 Colour the alignment using {\sl Colour  $\Rightarrow$ Blosum62}. Select a group of around 4 similar sequences. Use the context menu (right click on the group) option {\sl Selection $\Rightarrow$ Group $\Rightarrow$ Group Colour $\Rightarrow$ Blosum62} to colour the selection. Notice how some residues which were not coloured are now coloured. The calculations performed for dynamic colouring schemes like Blosum62 are based on the group being coloured, not the whole alignment (this also explains the colouring changes observed in the group selection exercise step \ref{exselectgrpcolour}).
1146 }
1147 \exstep{
1148 Keeping the same selection as before, colour the complete alignment using {\sl Colour  $\Rightarrow$ Taylor}. Select the menu option  {\sl Colour  $\Rightarrow$ By Conservation}. Slide the selector from side to side and observe the changes in the alignment colouring in the selection and in the complete alignment. 
1149 }
1150 }
1151
1152 \subsubsection{User Defined}
1153 This dialogue allows the user to create any number of named colour schemes at will. Any residue may be assigned any colour. The colour scheme can then be named. If you save the colour scheme, this name will appear on the Colour menu (Figure \ref{usercol}).
1154
1155
1156 \begin{figure}[htbp]
1157 \begin{center}
1158 \includegraphics[width=2.5in]{images/col_user1.pdf}
1159 \includegraphics[width=2in]{images/col_user2.pdf}
1160 \includegraphics[width=1.75in]{images/col_user3.pdf}
1161 \caption{{\bf Creation of a user defined colour scheme.} Residue types are assigned colours (left). The profile is saved (center) and can then be accessed {\sl via} the {\sl Colour} menu (right).}
1162 \label{usercol}
1163 \end{center}
1164 \end{figure}
1165
1166
1167 \exercise{User defined colour schemes}{
1168 \exstep{Load a sequence alignment. Select the alignment menu option {\sl Colour $\Rightarrow$ User Defined}. A dialogue window will open.
1169 }
1170 \exstep{Click on an amino acid button, then select a colour for that amino acid. Repeat till all amino acids are coloured to your liking.
1171 }
1172 \exstep{ Insert a name for the colourscheme in the appropriate field and click {\sl Save Scheme}. You will be prompted for a file name in which to save the colour scheme. The dialogue window can now be closed.
1173 }
1174 \exstep{
1175 The new colour scheme appears in the list of colour schemes in the {\sl Colour} menu and can be selected in future Jalview sessions.
1176 }
1177 }
1178
1179 \section{Alignment formatting and graphics output}
1180 \label{layoutandoutput}
1181 Jalview is a WYSIWIG alignment editor. This means that for most kinds of graphics output, the layout that is seen on screen will be the same as what is output in an exported graphics file. It is therefore important to pick the right kind of display layout prior to generating figures. 
1182
1183 \subsection{Multiple Alignment Views}
1184
1185 Jalview is able to create multiple independent visualizations of the same underlying alignment - these are called {\tr Views}. Because each view displays the same underlying data, any edits performed in one view will update the alignment or annotation visible in all views.
1186
1187 \parbox[c]{4in}{Alignment views are created using the {\sl View $\Rightarrow$ New View} option of the alignment window or by Pressing [CTRL]-T. This will create a new view with the same groups, alignment layout and display options as the current one. Pressing G will gather together Views as named tabs on the alignment window, and pressing X will expand gathered Views so they can be viewed simultaneously in their own separate windows. To delete a group, press [CTRL]-W.}\parbox[c]{2.75in}{
1188 \begin{center}\centerline{
1189 \includegraphics[width=2.5in]{images/mulv_tabs.pdf}}
1190 \end{center}
1191 }
1192
1193 % JBPNote make an excercise on views ?
1194
1195 \subsection{Alignment layout}
1196 Jalview provides two screen layout modes, unwrapped (the default) where the alignment is in one long line across the window, and wrapped, where the alignment is on multiple lines, each the width of the window. Most layout options are controlled by the Format menu option in the alignment window, and control the overall look of the alignment in the view (rather than just a selected region).
1197
1198 \subsubsection{Wrapped alignments}
1199 Wrapped alignments can be toggled on and off using the {\sl Format $\Rightarrow$ Wrap} menu option (Figure \ref{wrap}). Note that the annotation lines are also wrapped. Wrapped alignments are great for publications and presentations but are of limited use when working with large numbers of sequences. 
1200
1201 If annotations are not all visible in wrapped mode, expand the alignment window to view them. Note that alignment annotation (see Section \ref{featannot}) cannot be interactively created or edited in wrapped mode, and selection of large regions is difficult. 
1202 \begin{figure}[htbp]
1203 \begin{center}
1204 \parbox[c]{2in}{\includegraphics[width=2in]{images/wrap1.pdf}}
1205 \parbox[c]{4in}{\includegraphics[width=4in]{images/wrap2.pdf}}
1206 \caption{{\bf Wrapping the alignment}}
1207 \label{wrap}
1208 \end{center}
1209 \end{figure}
1210
1211
1212 \subsubsection{Fonts}
1213
1214 \parbox[c]{4in}{The text appearance in a view can be modified {\sl via} the {\sl Format $\Rightarrow$ Font\ldots} alignment window menu. This setting applies for all alignment and annotation text except for that displayed in tool-tips. Additionally, font size and spacing can be adjusted rapidly by clicking the middle mouse button and dragging across the alignment window.}
1215 \parbox[c]{2in}{\centerline{\includegraphics[width=1.75in]{images/font.pdf}}}
1216
1217 \subsubsection{Numbering and label justification}
1218 Options in the {\sl Format} menu are provided to control the alignment view, and provide a range of options to control the display of sequence and alignment numbering, the justification of sequence IDs and annotation row column labels on the annotation rows shown below the alignment.
1219
1220 \subsubsection{Alignment and Group colouring and appearance}
1221 The display of hidden row/column markers and gap characters can be turned off with {\sl Format $\Rightarrow$ Hidden Markers} and {\sl Format $\Rightarrow$ Show Gaps}, respectively. The {\sl Text} and {\sl Colour Text} option controls the display of sequence text and the application of alignment and group colouring to it. {\sl Boxes } controls the display of the background area behind each residue that is coloured by the applied coloursheme.  
1222
1223 \subsubsection{Highlighting nonconserved symbols}
1224 The alignment layout and group sub-menu both contain an option to hide
1225 conserved symbols from the alignment display ({\sl Format $\Rightarrow$ Show
1226 nonconserved } in the alignment window or {\sl Selection $\Rightarrow$ Group
1227 $\Rightarrow$ Show Nonconserved} by right clicking on a group). This mode is useful when working with
1228 alignments that exhibit a high degree of homology, because Jalview will only
1229 display gaps or sequence symbols that differ from the consensus for each
1230 column, and render all others with a `.'.
1231 %TODO add a graphic to illustrate this.
1232 \subsection{Annotation ordering and display}
1233 % TODO: describe consensus, conservation, quality user preferences, and group
1234 % annotation preferences.
1235 The annotation lines which appear below the sequence alignment are described in
1236 detail in Section \ref{featannot}. They can be hidden by toggling the {\sl View
1237 $\Rightarrow$ Show Annotations} menu option. Additionally, each annotation line
1238 can be hidden and revealed in the same way as sequences {\sl via} the context menu on
1239 the annotation name panel (Figure \ref{annot}). Annotations can be reordered by
1240 dragging the annotation line label on the annotation label panel. Placing the
1241 mouse over the top annotation label brings up a resize icon on the left. When this is
1242 displayed, Click-dragging up and down provides more space in the alignment window for viewing the annotations, and less space for the sequence alignment.
1243
1244 \begin{figure}
1245 \begin{center}
1246 \includegraphics[width=2.5in]{images/annot1.pdf}
1247 \includegraphics[width=2.5in]{images/annot2.pdf}
1248 \caption{{\bf Hiding Annotations} Annotations can either be hidden from the {\sl View} menu (left) or individually from the context menu (right)}
1249 \label{annot}
1250 \end{center}
1251 \end{figure}
1252
1253 \exercise{Alignment Layout}{
1254 \label{exscreen}
1255 \exstep{Start Jalview and open the URL \textsf{http://www.jalview.org/examples/exampleFile.jar}. Select {\sl Format $\Rightarrow$ Wrap} from the alignment window menu. Experiment with the various options from the {\sl Format} menu. to adjust the ruler placement, sequence ID format and so on. }
1256 \exstep{Hide all the annotation rows by selecting {\sl View $\Rightarrow$ Show Annotations} from the alignment window menu. Reveal the annotations by selecting the same menu option.} 
1257 \exstep{Right click on the annotation row labels to bring up the context menu.  Select {\sl Hide This Row}. Bring up the context menu again and select {\sl Show All Hidden Rows} to reveal them}
1258 \exstep{Annotations can be reordered by clicking and dragging the row to the desired position. Click on the {\sl Consensus} row and drag it upwards to just above {\sl Quality}. The rows should now be reordered. Features and annotations are covered in more detail in Section \ref{featannot} below.}
1259 \exstep{Move the mouse to the top left hand corner of the Secondary Structure annotation row label - a grey up/down arrow symbol should appear - when this is shown, the height of the {\sl Annotation Area} can be changed by Clicking and dragging the mouse up or down.}
1260 }
1261
1262 \subsection{Graphical output}
1263 \label{figuregen}
1264 \parbox[c]{4in}{Jalview allows alignments figures to be exported in three different formats, each of which is suited to a particular purpose. Image export is {\sl via} the {\sl File $\Rightarrow$ Export Image $\Rightarrow$ \ldots } alignment window menu option. }
1265 \parbox[c]{2in}{\centerline{\includegraphics[width=1.25in]{images/image.pdf}}}
1266
1267 \subsubsection{HTML}
1268
1269 \parbox[c]{3in}{HTML is the format used by web pages. Jalview outputs the alignment as an HTML table with all the colours and fonts as seen. Any additional annotation will also be embedded as sensitive areas on the page, such as URL links for each sequence's ID label. This file can then be viewed directly with any web browser. Each residue is placed in an individual table cell. Unwrapped alignments will produce a very wide page.}
1270 \parbox[c]{3.5in}{\centerline{\includegraphics[width=3in]{images/image_html.pdf}}}
1271
1272 \subsubsection{EPS}
1273 \parbox[c]{3in}{EPS is Encapsulated Postscript. {\bf It is the format of choice
1274 for publications and posters} as it gives the highest quality output of any of
1275 the image types. It can be scaled to any size, so will still look good on an A0
1276 poster.
1277 This format can be read by most good presentation and graphics packages such as Adobe Illustrator or Inkscape.
1278 }
1279 \parbox[c]{3.5in}{\centerline{\includegraphics[width=3in]{images/image_eps.pdf}} \par \centerline{Zoom Detail of EPS image.}}
1280
1281 \subsubsection{PNG}
1282 \parbox[c]{3in}{
1283 PNG is Portable Network Graphics. This output option produces an image that can be easily included in web pages and incorporated in presentations using e.g. Powerpoint or Open Office. It is a bitmap image so does not scale and is unsuitable for use on posters, or in publications.
1284
1285 For submission of alignment figures to journals, please use EPS\footnote{If the journal complains, {\em insist}.}.
1286 }
1287 \parbox[c]{3.5in}{\centerline{\includegraphics[width=3in]{images/image_png.pdf}} \par \centerline{Zoom Detail of PNG image.}}
1288  \exercise{Graphical Output}{
1289 \exstep{Load the example Jalview Jar file in Exercise \ref{exscreen}. Customise it how you wish but leave it unwrapped. Select {\sl File $\Rightarrow$ Export Image $\Rightarrow$ HTML} from the alignment menu. Save the file and open it in your favourite web browser.  }
1290 \exstep{Now wrap the alignment and export the image to HTML again. Compare the two images. Note that the exported image matches the format displayed in the alignment window but {\bf annotations are not exported}.}
1291 \exstep{Export the alignment using the {\sl File $\Rightarrow$ Export Image $\Rightarrow$ PNG} menu option. Open the file in an image viewer that allows zooming such as Paint or Photoshop (Windows), or Preview (Mac OS X) and zoom in. Notice that the image is a bitmap and it becomes pixelated very quickly. Note also that the {\bf annotation lines are included} in the image.}
1292 \exstep{Export the alignment using the {\sl File $\Rightarrow$ Export Image
1293 $\Rightarrow$ EPS} menu option. Open the file in a suitable program such as
1294 Photoshop, Illustrator, Inkscape, Ghostview, Powerpoint (Windows), or
1295 Preview (Mac OS X). Zoom in and note that the image has near-infinite
1296 resolution.} }
1297
1298 \chapter{Analysis and Annotation}
1299 \label{analysisannotation}
1300
1301 This chapter describes the annotation, analysis, and visualization tasks that
1302 the Jalview Desktop can perform. Section \ref{wkwithstructure} introduces the
1303 structure visualization capabilities of Jalview. In Section \ref{alignanalysis},
1304 you will find details of the Tree building, viewing and PCA capabilities,
1305 alignment redundancy removal, pairwise alignments and alignment conservation
1306 analysis. Section \ref{jvwebservices} introduces the various web based services
1307 available to Jalview users, and Section \ref{msaservices}
1308 describes how to use the range of multiple alignment programs provided by JABA
1309 (see Section \ref{jabaservices}). Similarly, Section \ref{protsspredservices}
1310 explains how to perform protein secondary structure predictions with JPred.
1311
1312 Section \ref{featannot} describes the mechanisms provided by Jalview for interactive creation of sequence and alignment annotation and how they are displayed, imported and exported. Section \ref{featuresfromdb} discusses the retrieval of database references and establishment of sequence coordinate systems for the retrieval and display of features from databases and DAS annotation services. Finally, Section \ref{workingwithnuc} describes functions and visualization techniques relevant to working with nucleotide sequences, coding region annotation and nucleotide sequence alignments.
1313
1314 \section{Working with structures}
1315 \label{wkwithstructure}
1316 Jalview facilitates the use of protein structures for the analysis of alignments by providing a linked view of structures associated with protein sequences in the alignment. The Java based molecular viewing program Jmol\footnote{See the Jmol homepage \url{http://www.jmol.org} for more information.} has been incorporated\footnote{Earlier versions of Jalview included MCView - a simple main chain structure viewer. Structures are visualized as an alpha carbon trace and can be viewed, rotated and coloured in a structure viewer and the results interpreted on a sequence alignment.} which enables sophisticated molecular visualizations to be prepared and investigated alongside an analysis of associated sequences.
1317 PDB format files can be imported directly or structures can be retrieved from
1318 the European Protein Databank (PDBe) using the Sequence Fetcher (see
1319 \ref{fetchseq}).
1320
1321 \subsection{Automatic association of PDB structures with sequences}
1322 Jalview can automatically determine which structures are associated with a
1323 sequence in a number of ways.
1324 \subsubsection{Discovery of PDB IDs from sequence database cross-references}
1325 If a sequence has an ID from a public database that contains cross-references to
1326 the PDB, such as Uniprot. Right-click on any sequence ID and select {\sl Structure $\Rightarrow$
1327 Associate Structure with Sequence $\Rightarrow$ Discover PDB IDs } from the context menu (Figure \ref{auto}). Jalview will attempt to associate the
1328 sequence with a Uniprot sequence and from there discover any associated PDB
1329 structures. This takes a few seconds and applies to all sequences in the
1330 alignment which have valid Uniprot IDs. On moving the cursor over the sequence
1331 ID the tool tip\footnote{Tip: The sequence ID tooltip can often become large for
1332 heavily cross referenced sequence IDs. Use the {\sl View $\Rightarow$ Sequence
1333 ID Tooltip $\Rightarrow$ } submenu to disable the display of database cross
1334 references or non-positional features. } now shows the Uniprot ID and any
1335 associated PDB structures.
1336
1337 \begin{figure}[htbp]
1338 \begin{center}
1339 %TODO fix formatting
1340 \parbox{1.5in}{
1341 {\centering 
1342 \begin{center}
1343 \includegraphics[width=1.5in]{images/auto1.pdf}
1344 \end{center}}
1345 } \parbox{3.25in}{
1346 {\centering 
1347 \begin{center}
1348 \includegraphics[scale=0.5]{images/auto2.pdf}
1349 \end{center}
1350 }
1351 } \parbox{1.5in}{
1352 {\centering 
1353 \begin{center} 
1354 \includegraphics[width=1.5in]{images/auto3.pdf}
1355 \end{center}
1356 }
1357 }
1358
1359 \caption{{\bf Automatic PDB ID discovery.} The tooltip (left) indicates that no PDB structure has been associated with the sequence. After PDB ID discovery (center) the tool tip now indicates the Uniprot ID and any associated PDB structures (right)}
1360 \label{auto}
1361 \end{center}
1362 \end{figure}
1363
1364 \subsubsection{Drag-and-drop association of PDB files with sequences by filename
1365 match}
1366 \label{multipdbfileassoc}
1367 If one or more PDB files stored on your computer are dragged from their location on the file browser 
1368 onto an alignment window, Jalview will search the alignment for sequences with IDs that
1369 match any of the files dropped onto the alignment. If it discovers matches, a
1370 dialog like the one in Figure \ref{multipdbfileassocfig} is shown, giving the
1371 option of creating associations for the matches. 
1372
1373 If no associations are made, then sequences extracted
1374 from the structure will be simply added to the alignment. However, if only
1375 some of the PDB files are associated, jalview will raise another dialog box giving
1376 you the option to add any remaining sequences from the PDB structure files not present in
1377 the alignment. This allows you to easily decorate sequences in a newly imported
1378 alignment with any corresponding structures you've already collected in a directory
1379 accessible from your computer.\footnote{We plan to extend this facility in
1380 future so Jalview will automatically search for PDB files matching your
1381 sequence within a local directory. Check out 
1382 \href{http://issues.jalview.org/browse/JAL-801}{Jalview issue 801}}
1383
1384 % there is no mention of the other footnote (#3) that appears saying: Tip: The sequence ID tooltip can often become large for heavily cross-referenced sequence IDs. Use the ...
1385 % JBP: yes there is - under 'Discovery of ' subsection.
1386 \begin{figure}[htbp]
1387 \begin{center}
1388 \includegraphics[]{images/pdbdragdropassoc.pdf}
1389
1390 \caption{{\bf Associating PDB files with sequences by drag-and-drop.} Dragging
1391 PDB files onto an alignment of sequences with names matching the dragged
1392 files names (A), results in a dialog box (B) that gives the option to associate each file with any sequences with matching IDs. }
1393 \label{multipdbfileassocfig}
1394 \end{center}
1395 \end{figure}
1396
1397
1398 \subsection{Viewing Protein Structures}
1399 The structure viewer can be launched in two ways from the sequence ID context
1400 menu. To view a particular structure associated with a sequence in the
1401 alignment, simply select it from popup menu's associated structures submenu in
1402 {\sl Structure $\Rightarrow$ View Structure $\Rightarrow$ $<$PDB ID$>$}. The
1403 second way is most useful if you want to view all structural data available for
1404 a set of sequences in an alignment. If any of the {\bold currently selected}
1405 sequences have structures associated, the {\sl Structure } submenu of the
1406 sequence ID popup menu will include an option to {\sl View {\bold N}
1407 structures}. Selecting this option will open a new structure view containing
1408 the associated structures superposed according to the alignment.
1409
1410 In both cases, each structure to be displayed will be downloaded or loaded from
1411 the local file system, and shown as a ribbon diagram coloured according to the
1412 associated sequence in the current alignment view (Figure \ref{structure}
1413 (right)). The structure can be rotated by clicking and dragging in the structure
1414 window. The structure can be zoomed using the mouse scroll wheel or by [SHIFT]-dragging the structure.
1415 Moving the mouse cursor over a sequence to which the structure is linked in the
1416 alignment view highlights the respective residue's sidechain atoms. The
1417 sidechain highlight may be obscured by other parts of the molecule. Similarly,
1418 moving the cursor over the structure shows a tooltip and highlights the
1419 corresponding residue in the alignment. Clicking the alpha carbon toggles the highlight 
1420 and residue label on and off. Often, the position highlighted in the sequence may not
1421 be in the visible portion of the current alignment view. If the alignment
1422 window's {\sl View $\Rightarrow$ Automatic Scrolling } option is selected, however, 
1423 then Jalview will automatically move the alignment scroll bars to show the
1424 highlighted region.
1425
1426 \begin{figure}[htbp]
1427 \begin{center}
1428 \parbox{3in}{
1429 {\centering 
1430 \begin{center}
1431 \includegraphics[scale=0.5]{images/structure1.pdf}
1432 \end{center}
1433 }
1434 }
1435 \parbox{3.2in}{
1436 {\centering 
1437 \begin{center}
1438 \includegraphics[width=3in]{images/structure2.pdf}
1439 \end{center}
1440 }
1441 }
1442 \caption{{\bf Structure visualization} The structure viewer is launched from the sequence ID context menu (left) and allows the structure to be visualized using the embedded Jmol molecular viewer (right). }
1443 \label{structure}
1444 \end{center}
1445 \end{figure}
1446
1447 \subsection{Customising structure display}
1448
1449 Structure display can be modified using the {\sl Colour} and {\sl View} menus
1450 in the structure viewer. The background colour can be modified by selecting the
1451 {\sl Colours $\Rightarrow$ Background Colour\ldots} option.
1452
1453 By default, the structure will be coloured in the same way as the
1454 associated sequence(s) in the alignment view from which it was launched. The
1455 structure can be coloured independently of the sequence by selecting an
1456 appropriate colour scheme from the {\sl Colours} menu. It can be coloured
1457 according to the alignment using the {\sl Colours $\Rightarrow$ By Sequence } option. The image in the structure viewer can be saved as an EPS or PNG with the {\sl File $\Rightarrow$ Save As
1458 $\Rightarrow$ \ldots} submenu, which also allows the raw data to be saved as PDB format. The mapping between the structure and the
1459 sequence (How well and which parts of the  structure relate to the sequence)
1460 can be viewed with the {\sl File $\Rightarrow$ View Mapping} menu option.
1461
1462 \subsubsection{Using the Jmol visualization interface }
1463
1464 Jmol has a comprehensive set of selection and visualization functions that are
1465 accessed from the Jmol popup menu (by right-clicking in the Jmol window or by
1466 clicking the Jmol logo). Molecule colour and rendering style can be
1467 manipulated, and distance measurements and molecular surfaces can be added to
1468 the view. It also has its own ``Rasmol\footnote{see
1469 http://www.rasmol.org}-like'' scripting language, which is described elsewhere\footnote{Jmol Wiki: \url{http://wiki.jmol.org/index.php/Scripting}
1470
1471 Jmol Scripting reference:
1472 \url{http://www.stolaf.edu/academics/chemapps/jmol/docs/}}. Jalview utilises the
1473 scripting language to interact with Jmol and to store the state of a Jmol visualization within Jalview archives, in addition to the PDB data file originally loaded or retrieved by Jalview. To access the Jmol scripting environment directly, use the {\sl Jmol $\Rightarrow$ Console} menu option. 
1474
1475 If you would prefer to use Jmol to manage structure colours, then select the
1476 {\sl Colours $\Rightarrow$ Colour with Jmol} option. This will disable any
1477 automatic application of colour schemes when new structure data is added, or
1478 when associated alignment views are modified.
1479
1480
1481 \exercise{Viewing Structures}{\label{viewingstructex}
1482 \exstep{Load the alignment at
1483 \textsf{http://www.jalview.org/examples/exampleFile.jar}. Right-click on the
1484 sequence ID label for any of the sequences (e.g. {\sl FER1\_SPIOL}) to bring up
1485 the context menu. Select {\sl FER1\_SPIOL $\Rightarrow$ Structure $\Rightarrow$
1486 Associate Structure with Sequence $\Rightarrow$ Discover
1487 PDB IDs}. Jalview will now attempt to find PDB structures for the sequences in
1488 the alignment. } \exstep{ Right-click on the sequence ID for {\sl FER1\_SPIOL}.
1489 Select { \sl FER1\_SPIOL $\Rightarrow$ Structure $\Rightarrow$ View Structure
1490 $\Rightarrow$ 1A70}. A structure viewing window appears. Rotate the molecule by clicking and dragging in the structure viewing box. Zoom with the mouse scroll wheel. } \exstep{Roll the mouse cursor along the {\sl FER1\_SPIOL} sequence in the alignment. Note that if a residue in the sequence maps to one in the structure, a label will appear next to that residue in the structure viewer. Move the mouse over the structure. Placing the mouse over a part of the structure will bring up a tool tip indicating the name and number of that residue. The corresponding residue in the sequence is highlighted in black. Clicking the alpha carbon toggles the highlight and residue label on and off. Try this by clicking on a set of three or four adjacent residues so that the labels are persistent, then finding where they are in the sequence. }
1491 \exstep{Select {\sl Colours $\Rightarrow$ Background Colour\ldots} from the structure viewer menu and choose a suitable colour. Press OK to apply this. Select {\sl File $\Rightarrow$ Save As $\Rightarrow$ PNG} and save the image. View this with a suitable program. }
1492 \exstep{Select {\sl File $\Rightarrow$ View Mapping} from the structure viewer menu. A new window opens showing the residue by residue alignment between the sequence and the structure.} 
1493 \exstep{Select {\sl File $\Rightarrow$ Save $\Rightarrow$ PDB file} and choose a new filename to save the PDB file. Once the file is saved, open the location in your file browser (or explorer window) and drag the PDB file that you just saved on to the Jalview desktop (or load it from the {\sl Jalview Desktop $\Rightarrow$ Input Alignment $\Rightarrow$ From File } menu). Verify that you can open and view the associated structure from the sequence ID pop-up menu's {\sl Structure } submenu in the new alignment window.}
1494
1495 \exstep{Right click on the structure to bring up the Jmol window. Explore the menu options. Try to change the style of molecular display - by first using the {\sl Jmol $\Rightarrow$ Select (n) $\Rightarrow$ All} command (where {\sl n} is the number of residues selected), and then the {\sl Jmol $\Rightarrow$ Style $\Rightarrow$ Scheme $\Rightarrow$ Ball and Stick} command.}
1496 \exstep{Use the {\sl File $\Rightarrow$ Save As .. } function to save the alignment as a Jalview Project. Now close the alignment and the structure view, and load the project file you just saved.
1497
1498 Verify that the Jmol display is as it was when you just saved the file.}
1499 }
1500
1501 \subsection{Superimposing structures}
1502 \label{superposestructs}
1503 Many comparative biomolecular analysis investigations aim to determine if the
1504 biochemical properties of a given molecule are signficantly different to its
1505 homologues. When structure data is available, comparing the shapes of molecules
1506 by superimposing them enables substructure that may impart different behaviour
1507 to be quickly identified. The identification of optimal 3D superpositions
1508 involves aligning 3D data rather than sequence symbols, but the result can
1509 still be represented as a sequence alignment, where columns indicate positions
1510 in each molecule that should be superposed to recreate the optimal 3D alignment.
1511
1512 Jalview can employ Jmol's 3D fitting routines\footnote{See
1513 \href{http://chemapps.stolaf.edu/jmol/docs/?ver=12.2#compare}{http://chemapps.stolaf.edu/jmol/docs/?ver=12.2$\#$compare}
1514 for more information.} to recreate 3D structure superpositions based on the
1515 correspondences defined by one or more sequence alignments involving structures shown in the Jmol display. Superposition based on the currently displayed alignment view happens automatically if a
1516 structure is added to an existing Jmol display using the {\sl Structure
1517 $\Rightarrow$ View PDB Structure $\Rightarrow$ ..}. A new Jmol view containing
1518 superposed structures can also be created using the {\sl Structure
1519 $\Rightarrow$ View all {\bf N} PDB Structures} option (when {\bf {\sl N}}
1520 $>$ 1) if the current selection contains two or more sequences with associated
1521 structures.
1522
1523 \subsubsection{Obtaining the RMSD for a superposition}
1524 The RMSD (Root Mean Square Deviation) is a measure of how similar the structures are when they are superimposed. Figure \ref{mstrucsuperposition} shows a superposition created during the course
1525 of Exercise \ref{superpositionex}. The parts of each molecule used to construct
1526 the superposition are rendered using the cartoon style, with other parts of
1527 the molecule drawn in wireframe. The Jmol console, which has been opened after
1528 the superposition was performed, shows the RMSD report for the superposition.
1529 Full information about the superposition is also output to the Jalview console,
1530 including the precise atom pairs used to superpose structures. 
1531
1532 \subsubsection{Choosing which part of the alignment is used for structural
1533 superposition}
1534 Jalview uses the visible part of each alignment view to define which parts of
1535 each molecule are to be superimposed. Hiding a column in a view used for
1536 superposition will remove that correspondence from the set, and will exclude it from the superposition and RMSD calculation. 
1537 This allows the selection of specific parts of the alignment to be used for
1538 superposition. Only columns that define a complete set of correspondences for
1539 all structures will be used for structural superposition, and as a consequence,
1540 the RMSD values generated for each pair of structures superimposed can be
1541 directly compared.
1542
1543 In order to recompute a superposition after changing a view or editing the
1544 alignment, select the {\sl Jmol $\Rightarrow$ Align sequences } menu option. The {\sl
1545 Jmol $\Rightarrow$ Superpose with ..} submenu allows you to choose which of the
1546 associated alignments and views are to be used to create the set of
1547 correspondences. This menu is useful when composing complex superpositions
1548 involving multi-domain and multi-chain complexes, when correspondences may be
1549 defined by more than one alignment.
1550
1551 Note that these menu options appear when you have two or more structures in one Jmol viewer.
1552
1553
1554
1555 \begin{figure}[htbp]
1556 \begin{center}
1557 \includegraphics[width=5.5in]{images/fdxsuperposition.pdf}
1558 \caption{{\bf Superposition of two ferredoxin structures.} The alignment on the
1559 left was used by jalview to superpose structures associated with the
1560 FER1\_SPIOL and FER1\_MAIZE sequences in the alignment. Parts of each structure
1561 used for superposition are rendered as a cartoon, the remainder rendered in
1562 wireframe. The RMSD between corresponding positions in the structures before and
1563 after the superposition is shown in the Jmol console.  }
1564 \label{mstrucsuperposition}
1565 \end{center}
1566 \end{figure}
1567
1568 \exercise{Aligning structures using the ferredoxin
1569 sequence alignment.}{\label{superpositionex}
1570
1571 \exstep{Continue with the Jalview project created in exercise
1572 \ref{viewingstructex}. Use the {\sl Discover PDB IDs} function to retrieve PDB
1573 IDs associated with the FER1\_MAIZE sequence.}
1574 \exstep{Once discovery has completed, use the {\sl
1575 View PDB Structure} submenu to view the PDB file associated with FER1\_MAIZE.
1576 Jalview will give you the option of aligning the structure to the one already
1577 open. To superimpose the structure associated with FER1\_MAIZE with the one
1578 associated with FER1\_SPIOL, press the {\bf Yes} button.
1579
1580 {\sl The Jmol view will update to show both structures, and one will be
1581 moved on to the other.}}
1582 \exstep{Create a new view on the alignment, and hide all but columns 121
1583 through to 132.}
1584 \exstep{Use the {\sl Jmol} submenu to
1585 recompute the superposition using just columns 121-132 of the alignment.
1586
1587 {\sl Note how the molecules shift position when superposed using a short part of
1588 the two structures.}}
1589 \exstep{Compare the initial and final RMSDs for superimposing molecules with
1590 the small section and with the whole alignment. Which view do you think give the
1591 best 3D superposition, and why ?} }
1592
1593 \subsection{Colouring structure data associated with multiple alignments and views}
1594 Normally, the original view from which a particular structure view was
1595 opened will be the one used to colour structure data. If alignments involving
1596 sequences associated with structure data shown in a Jmol have multiple views, Jalview gives you full control
1597 over which alignment, or alignment view, is used to colour the structure
1598 display. Sequence-structure colouring associations are
1599 changed {\sl via} the {\sl View $\Rightarrow$ Colour by ..} menu, which lists all
1600 views associated with data shown in the embedded Jmol view. A tick is shown beside
1601 views currently used as colouring source, and moving the
1602 mouse over each view will bring it to the front of the alignment display,
1603 allowing you to browse available colour sources prior to selecting one. If the
1604 {\sl Select many views} option is selected, then multiple views can be selected as sources for colouring the
1605 structure data. {\sl Invert selection} and {\sl Select all views} options are also provided to quickly change between multi-view selections.
1606
1607 Note that the {\sl Select many views} option is useful if you have different
1608 views that colour different areas or domains of the alignment. This option is
1609 further explored in Section \ref{complexstructurecolours}.
1610
1611 \begin{figure}[htbp]
1612 \begin{center}
1613 \includegraphics[width=5.5in]{images/mviewstructurecol.pdf}
1614 \caption{{\bf Choosing a different view for colouring a structure display}
1615 Browsing the {\sl View $\Rightarrow$ Colour by ..} menu provides full control
1616 of which alignment view is used to colour structures when the {\sl Colours
1617 $\Rightarrow$ By Sequence} option is selected.}
1618 \label{mviewstructurecol}
1619 \end{center}
1620 \end{figure}
1621
1622 \subsubsection{Colouring complexes}
1623 \label{complexstructurecolours}
1624 The ability to control which multiple alignment view is used to colour
1625 structural data is essential when working with data relating to
1626 multidomain biomolecules and complexes. 
1627
1628 In these situations, each chain identified in the structure may have a different
1629 evolutionary history, and a complete picture of functional variation can
1630 only be gained by integrating data from different alignments on the same
1631 structure view. An example of this is shown in Figure
1632 \ref{mviewalcomplex}, based on data from Song et. al\footnote{Structure of
1633 DNMT1-DNA Complex Reveals a Role for Autoinhibition in Maintenance DNA Methylation. Jikui Song, Olga Rechkoblit, Timothy H. Bestor, and Dinshaw J. Patel.
1634 {\sl Science} 2011 {\bf 331} 1036-1040
1635 \href{http://www.sciencemag.org/content/331/6020/1036}{DOI:10.1126/science.1195380}}
1636
1637 \begin{figure}[htbp]
1638 \begin{center}
1639 \includegraphics[]{images/mchainstructureview.pdf}
1640 \caption{{\bf The biological assembly of Mouse DNA Methyltransferase-1 coloured
1641 by Pfam alignments for its major domains} Alignments for each domain within the
1642 Uniprot sequence DNMT1\_MOUSE have been used to visualise sequence conservation
1643 in each component of this protein-DNA complex. Instructions for recreating this figure are given in exercise \ref{dnmtcomplexex}. }
1644 \label{mviewalcomplex}
1645 \end{center}
1646 \end{figure}
1647
1648 \exercise{Colouring a protein complex to explore domain-domain interfaces}{\label{dnmtcomplexex}
1649
1650 \exstep{Download the PDB file at
1651 \textsf{http://www.jalview.org/tutorial/DNMT1\_MOUSE.pdb} to your desktop. This
1652 is the biological unit for PDB ID 3pt6, as identified by the PDBe's PISA server.}
1653
1654 \exstep{Launch the Jalview desktop and ensure you have at least 256MB of
1655 free memory available.
1656
1657 {\sl Use the following webstart link:
1658 \href{http://www.jalview.org/webstart/jalview_1G.jnlp}{http://www.jalview.org/webstart/jalview\_1G.jnlp}}.}
1659 \exstep{Retrieve the following
1660 {\bf full} PFAM alignments: PF02008, PF00145, PF01426. These will each be retrieved into their own alignment window.} 
1661 \exstep{Drag the structure you downloaded in
1662 step 1 onto one of the alignments to associate it with the mouse sequence in
1663 that Pfam domain family.}
1664 \exstep{For every DNMT1\_MOUSE sequence in the alignment, use the sequence
1665 ID popup menu's {\sl Structure} submenu to view the DNMT1\_MOUSE structure for the associated mouse sequence. When given the option, {\bf view all of the structures in the same Jmol viewer}. Check the contents of the {\sl View $\Rightarrow$ Colour by ..} submenu to see what alignments can be used to
1666 colour the sequence.}
1667 \exstep{Repeat the previous two steps for each of
1668 the other alignments. In each case, when performing the `View DNMT1\_MOUSE.pdb'
1669 step, Jalview will ask if you wish to create a new Jmol view. You should
1670 respond `No', {\bf ensuring that each sequence fragment is associated with the same Jmol view}.}
1671 \exstep{Pick a different colourscheme for each alignment, and use the {\sl
1672 Colour by ..} submenu to ensure they are all used to colour the complex shown
1673 in the Jmol window.}
1674 \exstep{The final step needed to reproduce the shading in Figure
1675 \ref{mviewalcomplex} is to use the {\sl Colour $\Rightarrow$ By
1676 Annotation } option in each alignment window to shade the alignment by the
1677 {\bf Conservation} annotation row. This function was described in section
1678 \ref{colourbyannotation}. 
1679
1680 Ensure that you first disable the {\sl View $\Rightarrow$ Show Features} menu option, or you may not see any colour changes in the associated structure.
1681
1682 {\sl Note: Choose a different shading scheme for each
1683 alignment so that the regions of strong physicochemical conservation are highlighted. This
1684 kind of shading will reveal conserved regions of interaction between domains 
1685 in the structure.}}
1686 \exstep{Save your work as a Jalview project and verify that it can be opened again by starting another Jalview Desktop instance, and dragging the saved project into the desktop window.}
1687 {\sl Note: This exercise relies on new features introduced in Jalview 2.7. If
1688 you notice any strange behaviour when trying out this exercise, it may be a
1689 bug (see
1690 \href{http://issues.jalview.org/browse/JAL-1008}{http://issues.jalview.org/browse/JAL-1008}
1691 for one relating to highlighting of positions in the alignment window).} }
1692
1693 \section{Analysis of alignments}
1694 \label{alignanalysis}
1695 Jalview provides support for sequence analysis in two ways. A number of analytical methods are `built-in', these are accessed from the {\sl Calculate} alignment window menu. Computationally intensive analyses are run outside Jalview {\sl via} web services - these are typically accessed {\sl via} the {\sl Web Service} menu, and described in \ref{jvwebservices} and subsequent sections. In this section, we describe the built-in analysis capabilities common to both the Jalview Desktop and the JalviewLite applet.
1696  
1697 \subsection{PCA}
1698 This calculation creates a spatial representation of the similarities within the current selection or the whole alignment if no selection has been made. After the calculation finishes, a 3D viewer displays the each sequence as a point in 3D `similarity space'. Sets of similar sequences tend to lie near each other in this space.
1699 Note: The calculation is computationally expensive, and may fail for very large sets of sequences - because the JVM has run out of memory. Memory issues, and how to overcome them, were discussed in Section \ref{memorylimits}.
1700 \subsubsection{What is PCA?}
1701
1702 Principal components analysis is a technique for examining the structure of complex data sets. The components are a set of dimensions formed from the measured values in the data set, and the principle component is the one with the greatest magnitude, or length. The sets of measurements that differ the most should lie at either end of this principle axis, and the other axes correspond to less extreme patterns of variation in the data set.
1703 In this case, the components are generated by an eigenvector decomposition of the matrix formed from the sum of BLOSUM scores at each aligned position between each pair of sequences. The basic method is described in the 1995 paper by {\sl G. Casari, C. Sander} and {\sl A. Valencia} \footnote{{\sl Nature Structural  Biology} (1995) {\bf 2}, 171-8. 
1704 PMID: 7749921} and implemented at the SeqSpace server at the EBI.
1705
1706 \subsubsection{The PCA Viewer}
1707
1708 PCA analysis can be launched from the {\sl Calculate $\Rightarrow$ Principle Component Analysis} menu option. {\bf PCA requires a selection containing at least 4 sequences}.  A window opens containing the PCA tool (Figure \ref{PCA}). Each sequence is represented by a small square, coloured by the background colour of the sequence ID label. The axes can be rotated by clicking and dragging the left mouse button and zoomed using the $\uparrow$ and $\downarrow$ keys or the scroll wheel of the mouse (if available).  A tool tip appears if the cursor is placed over a sequence. Sequences can be selected by clicking on them. [CTRL]-Click can be used to select multiple sequences. 
1709 \begin{figure}[hbtp]
1710 \begin{center}
1711 \includegraphics[width=2in]{images/PCA1.pdf}
1712 \includegraphics[width=3in]{images/PCA3.pdf}
1713 \caption{{\bf PCA Analysis} }
1714 \label{PCA}
1715 \end{center}
1716 \end{figure}
1717 Labels will be shown for each sequence by toggling the {\sl View $\Rightarrow$ Show Labels} menu option, and the plot background colour changed {\sl via} the {\sl View $\Rightarrow$ Background Colour..} dialog box. A graphical representation of the PCA plot can be exported as an EPS or PNG image {\sl via} the {\sl File $\Rightarrow$ Save As $\Rightarrow$ \ldots } submenu.
1718
1719 \exercise{Principle Component Analysis}{
1720 \exstep{Load the alignment at
1721 \textsf{http://www.jalview.org/examples/exampleFile.jar} and press [ESC] to clear any selections. Alternatively, select {\sl Select $\Rightarrow$ Undefine Groups} to remove all groups and colourschemes. } \exstep{Select the menu option {\sl Calculate $\Rightarrow$ Principle Component Analysis}. A new window will open. Move this window so that the tree, alignment and PCA viewer window are all visible. Try rotating the plot by clicking and dragging the mouse on the plot in the PCA window. Note that clicking on points in the plot will highlight them on the alignment and tree. }
1722 \exstep{
1723 Click on the tree window. Careful selection of the tree partition location will divide the alignment into a number of groups, each of a different colour. Note how the colour of the sequence ID label matches both the colour of the partitioned tree and the points in the PCA plot.
1724 }
1725 }
1726
1727 \subsection{Trees}
1728 \label{trees}
1729 Jalview can calculate and display trees, providing interactive tree-based grouping of sequences though a tree viewer. All trees are calculated {\sl via} the {\sl Calculate $\Rightarrow$ Calculate Tree $\Rightarrow$ \ldots} submenu. Trees can be calculated from distance matrices determined from \% identity or aggregate BLOSUM 62 score using either {\sl Average Distance} (UPGMA) or {\sl Neighbour Joining} algorithms. The input data for a tree is either the selected region or the whole alignment, excluding any hidden regions.
1730
1731 On calculating a tree, a new window opens (Figure \ref{trees1}) which contains
1732 the tree. Various display settings can be found in the tree window {\sl View}
1733 menu, including font, scaling and label display options, and the {\sl File
1734 $\Rightarrow$ Save As} submenu contains options for image and Newick file
1735 export. Newick format is a standard file format for trees which allows them to
1736 be exported to other programs.  Jalview can also read in external trees in Newick format {\sl via} the {\sl File $\Rightarrow$ Load Associated Tree} menu option. Leaf names on imported trees will be matched to the associated alignment - unmatched
1737 leaves will still be displayed, and can be highlighted using the {\sl View
1738 $\Rightarrow$ Mark Unlinked Leaves} menu option.
1739
1740
1741 \begin{figure}
1742 \begin{center}
1743 \includegraphics[width=2.5in]{images/trees1.pdf}
1744 \includegraphics[width=2.5in]{images/trees2.pdf}
1745 \includegraphics[width=1.25in]{images/trees4.pdf}
1746 \caption{{\bf Calculating Trees} Jalview provides four built in models for calculating trees. Jalview can also load precalculated trees in Newick format (right).}
1747 \label{trees1}
1748 \end{center}
1749 \end{figure}
1750
1751
1752 Clicking on the tree brings up a cursor across the height of the tree. The
1753 sequences are automatically partitioned and coloured (Figure \ref{trees2}). To
1754 group them together, select the {\sl Calculate $\Rightarrow$ Sort $\Rightarrow$
1755 By Tree Order $\Rightarrow$ \ldots} alignment window menu option and choose the
1756 correct tree. The sequences will then be sorted according to the leaf order currently shown in the tree view. The coloured background to the sequence IDs can be removed with {\sl Select $\Rightarrow$ Undefine Groups} from the alignment window menu. Note that tree partitioning will also remove any groups and colourschemes on a view, so create a new view ([CTRL-T]) if you wish to preserve these.
1757
1758 \begin{figure}
1759 \begin{center}
1760 \includegraphics[width=5in]{images/trees3.pdf}
1761 \caption{{\bf Interactive Trees} The tree level cutoff can be used to designate groups in Jalview}
1762 \label{trees2}
1763 \end{center}
1764 \end{figure}
1765
1766 %\subsubsection{Multiple Views and Input Data recovery from PCA and Tree Viewers}
1767 % move to ch. 3 ?
1768 %Both PCA and Tree viewers are linked analysis windows. This means that their selection and display are linked to a particular alignment, and control and reflect the selection state for a particular view.
1769
1770 \subsubsection{Recovering input data for a tree or PCA plot calculation}
1771 \parbox[c]{5in}{
1772 The {\sl File $\Rightarrow$ Input Data } option will open a new alignment window containing the original data used to calculate the tree or PCA plot (if available). This function is useful when a tree has been created and then the alignment subsequently changed. 
1773 }
1774 \parbox[c]{1.25in}{\centerline{\includegraphics[width=1.25in]{images/pca_fmenu.pdf}
1775 }}
1776
1777 \subsubsection{Changing the associated view for a tree or PCA viewer}
1778 \parbox[c]{4in}{
1779 The {\sl View $\Rightarrow$ Associated Nodes With $\Rightarrow$ .. } submenu is shown when the viewer is associated with an alignment that is involved in multiple views. Selecting a different view does not affect the tree or PCA data, but will change the colouring and display of selected sequences in the display according to the colouring and selection state of the newly associated view. 
1780 } \parbox[c]{3in}{\centerline{
1781 \includegraphics[width=2.5in]{images/pca_vmenu.pdf} }}
1782
1783
1784 \exercise{Trees}{
1785 \exstep{ Open the alignment at \textsf{http://www.jalview.org/tutorial/alignment.fa}. Select {\sl Calculate $\Rightarrow$ Calculate Tree $\Rightarrow$ Neighbour Joining Using BLOSUM62}. A new tree window will appear.}
1786 \exstep{Click on the tree window. A cursor will appear. Note that placing this cursor divides the tree into a number of groups by colour. Place the cursor to give about 4 groups, then select {\sl Calculate $\Rightarrow$ Sort $\Rightarrow$ By Tree Order $\Rightarrow$ Neighbour Joining Tree using BLOSUM62 from ... }. The sequences are reordered to match the order in the tree and groups are formed implicitly.}
1787 \exstep{Select {\sl Calculate $\Rightarrow$ Calculate Tree $\Rightarrow$ Neighbour Joining Using \% Identity}. A new tree window will appear. The group colouring makes it easy to see the diferences between the two trees, calculated using different methods.}
1788 \exstep{Select from sequence 2 column 60 to sequence 12 column 123. Select  {\sl Calculate $\Rightarrow$ Calculate Tree $\Rightarrow$ Neighbour Joining Using BLOSUM62}. A new tree window will appear. It can be seen that the tree contains 11 sequences. It has been coloured according to the already selected groups from the first tree and is calculated purely from the residues in the selection. 
1789 Comparing the location of individual sequences between the three trees illustrates the importance of selecting appropriate regions of the alignment for the calculation of trees. 
1790 }
1791 \exstep{Recover the {\sl Input Data} for the tree you just calculated from the {\sl File} menu. Check the {\sl Edit $\Rightarrow$ Pad Gaps } option is {\sl not} ticked, and insert one gap anywhere in the alignment. Now select {\sl Calculate $\Rightarrow$ Calculate Tree $\Rightarrow$ Neighbour Joining Using BLOSUM62}. 
1792
1793 A warning dialog box {\bf ``Sequences not aligned'' } appears because the sequences input to the tree calculation are of different lengths. }
1794
1795 \exstep{Now select {\sl Edit $\Rightarrow$ Pad Gaps } and try to perform the tree calculation again - this time a new tree should appear.
1796
1797 This demonstrates the use of the {\sl Pad Gaps } editing preference, which ensures that all sequences are the same length after editing. }
1798
1799 }
1800
1801 \subsection{Tree Based Conservation Analysis}
1802 \label{treeconsanaly}
1803
1804 Trees reflect the pattern of global sequence similarity exhibited by the
1805 alignment, or region within the alignment, that was used for their calculation.
1806 The Jalview tree viewer enables sequences to be partitioned into groups based
1807 on the tree. This is done by clicking within the tree viewer window. Once subdivided, the
1808 conservation between and within groups can be visually compared in order to
1809 better understand the pattern of similarity revealed by the tree and the
1810 variation within the clades partitioned by the grouping. The conservation based
1811 colourschemes and the group associated conservation and consensus annotation
1812 (enabled using the alignment window's {\sl View $\Rightarrow$ Autocalculated
1813 Annotation $\Rightarrow$ Group Conservation} and {\sl Group Consensus} options)
1814 can help when working with larger alignments.
1815
1816 \exercise{Tree Based Conservation Analysis}{
1817 \label{consanalyexerc}
1818 \exstep{Load the PF03460 PFAM seed alignment using the sequence fetcher. Colour it with the {\sl Taylor colourscheme}, and apply {\sl Conservation } shading. }
1819 \exstep{Build a Neighbourjoining tree using BLOSUM62 and use the {\sl Sort Alignment By Tree} option in the tree viewer submenu to order alignment using the calculated tree.}
1820 \exstep{Select a point on the tree to partition the alignment, and examine the variation in colouring between different groups. 
1821
1822 You may find it easier to browse the alignment if you first uncheck the {\sl View $\Rightarrow$ Show Annotations} option, and open the Overview Window to aid navigation.}
1823 \exstep{Try changing the colourscheme to BLOSUM62 (whilst ensuring that {\sl Apply Colour to All Groups} is selected)}
1824 {\sl Note: You may want to save the alignment and tree as a project file, since
1825 it is used in the next few exercises. } }
1826
1827 \subsection{Redundancy Removal}
1828
1829 The redundancy removal dialog box is opened using the {\sl Edit $\Rightarrow$ Remove Redundancy\ldots} option in the alignment menu. As its menu option placement suggests, this is actually an alignment editing function, but it is convenient to describe it here. The redundancy removal dialog box presents a percentage identity slider which sets the redundancy threshold. Aligned sequences which exhibit a percentage identity greater than the current threshold are highlighted in black. The [Remove] button can then be used to delete these sequences from the alignment as an edit operation\footnote{Which can usually be undone. A future version of Jalview may allow redundant sequences to be hidden, or represented by a chosen sequence, rather than deleted.}.
1830 \begin{figure}
1831 \begin{center}
1832 \includegraphics[width=5.5in]{images/redundancy.pdf}
1833 \end{center}
1834 \label{removeredundancydialog}
1835 \caption{The Redundancy Removal dialog box opened from the edit menu. Sequences that exceed the current percentage identity threshold and are to be removed are highlighted in black.}
1836 \end{figure}
1837
1838 \exercise{Remove redundant sequences}{
1839 \exstep{Re-use or recreate the alignment and tree which you worked with in the
1840 tree based conservation analysis exercise (exercise \ref{consanalyexerc})}
1841 \exstep{Open the Remove Redundancy dialog and adjust the threshold to 90\%. Remove the sequences that are more than 90\% similar under this alignment.}
1842 \exstep{Select the Tree viewer's {\sl View $\Rightarrow$ Mark Unlinked Leaves} option, and note that the removed sequences are now prefixed with a * in the tree view.}
1843 \exstep{Use the [Undo] button on the dialog to recover the sequences. Note that the * symbols disappear from the tree display.}
1844 \exstep{Experiment with the redundancy removal and observe the relationship between the percentage identity threshold and the pattern of unlinked nodes in the tree display.}
1845 }
1846
1847 \subsection{Subdividing the alignment according to specific mutations}
1848
1849 It is often necessary to explore variations in an alignment that may correlate
1850 with mutations observed in a particular region; for example, sites
1851 exhibiting single nucleotide polymorphism, or residues involved in substrate
1852 recognition in an enzyme. One way to do this would be to calculate a tree using
1853 the specific region, and subdivide it in order to partition the alignment.
1854 However, calculating a tree can be slow for large alignments, and the tree may be difficult to partition when complex mutation patterns are being analysed. The {\sl Select $\Rightarrow$ Make groups for
1855 selection } function was introduced to make this kind of analysis easier. When
1856 selected, it will use the characters in the currently selected region to
1857 subdivide the alignment. For example, if a single column is selected, then the
1858 alignment (or each group defined on the alignment) will be divided into groups
1859 based on the residue or nucleotide found at that position. These new groups are
1860 annotated with the characters in the selected region, and Jalview's group based
1861 conservation analysis annotation and colourschemes can then be used to reveal
1862 any associated pattern of sequence variation across the whole alignment.
1863
1864 \subsection{Automated annotation of Alignments and Groups}
1865
1866 On loading a sequence alignment, Jalview will
1867 normally\footnote{Automatic annotation can be turned off in the
1868 {\sl Visual } tab in the {\sl Tools $\Rightarrow$ Preferences } dialog box.}
1869 calculate a set of automatic annotation rows which are shown below the
1870 alignment. For nucleotide sequence alignments, only an alignment
1871 consensus row will be shown, but for amino acid sequences,
1872 alignment quality (based on BLOSUM62) and physicochemical conservation will
1873 also be shown. Conservation is calculated according to Livingstone and
1874 Barton\footnote{{\sl ``Protein Sequence Alignments: A Strategy for the Hierarchical Analysis of Residue Conservation."
1875 } Livingstone C.D. and Barton G.J. (1993) {\sl CABIOS } {\bf 9}, 745-756}.
1876 Consensus is the modal residue (or {\tt +} where there is an equal top
1877 residue). The inclusion of gaps in the consensus calculation can be toggled by
1878 right-clicking on the the Consensus label and selecting {\sl Ignore Gaps in
1879 Consensus} from the context menu. Quality is a measure of the inverse
1880 likelihood of unfavourable mutations in the alignment. Further details on these
1881 calculations can be found in the on-line documentation.
1882
1883 These annotations can be hidden and deleted but are only created on loading an
1884 alignment. If they are deleted then the alignment should be saved and reloaded
1885 to restore them. Jalview provides a toggle to autocalculate a consensus
1886 sequence upon editing. This is normally selected by default, but can be turned off for large alignments
1887 {\sl via} the {\sl Calculate $\Rightarrow$ Autocalculate
1888 Consensus} menu option if the interface is too slow.
1889
1890 \subsubsection{Group Associated Annotation}
1891 \label{groupassocannotation}
1892 Group associated consensus and conservation annotation rows reflect the
1893 sequence variation within a particular group. Their calculation is enabled
1894 by selecting the {\sl Group Conservation} or {\sl Group Consensus} options in
1895 the {\sl View $\Rightarrow$ Autocalculated Annotation } submenu of the alignment
1896 window. 
1897
1898 \subsubsection{Alignment and Group Sequence Logos}
1899 \label{seqlogos}
1900
1901 The consensus annotation row that is shown below the alignment can be overlaid
1902 with a sequence logo that reflects the symbol distribution at each column of
1903 the alignment. Right click on the Consensus annotation row and select the {\sl Show
1904 Logo} option to display the Consensus profile for the group or alignment.
1905 Sequence logos can be enabled by default for all new alignments {\sl via} the
1906 Visual tab in the Jalview desktop's preferences dialog box.
1907
1908 \exercise{Group conservation analysis}{
1909 \exstep{Re-use or recreate the alignment and tree which you worked with in the
1910 tree based conservation analysis exercise (exercise \ref{consanalyexerc})} \exstep{Create a new view, and ensure the annotation panel is displayed, and
1911 enable the display of {\sl Group Consensus} and the display of sequence
1912 logos to make it easier to see the different residue populations within each group.}
1913 \exstep{Select a column exhibiting about 50\% conservation that lies within the
1914 central conserved region of the alignment. Subdivide the alignment according to
1915 this selection using {\sl Select $\Rightarrow$ Make groups for selection}.}
1916 \exstep{Re-order the alignment according to the new groups that have been
1917 defined. Click on the group annotation row IDs to select groups exhibiting a
1918 specific mutation.}
1919 \exstep{Select another column exhibiting about 50\% conservation
1920 overall, and subdivide the alignment further. Note that the new groups
1921 inherit the names of the original groups, allowing you to identify the
1922 combination of mutations that resulted in the subdivision.
1923 }
1924 \exstep{Clear the groups, and try to subdivide the alignment using two
1925 non-adjacent columns.
1926 {\sl Hint: You may need to hide the intervening columns
1927 before you can select both of the columns that you wish to use to subdivide
1928 the alignment.}}
1929 \exstep{Switch back to the original view, and experiment with subdividing the tree groups made in the previous exercise.}
1930 }
1931
1932 \subsection{Other Calculations}
1933
1934
1935 \subsubsection{Pairwise Alignments}
1936
1937 Jalview can calculate optimal pairwise alignments between arbitrary sequences {\sl via} the {\sl Calculate $\Rightarrow$ Pairwise Alignments\ldots} menu option. Global alignments of all pairwise combinations of the selected sequences are performed and the results returned in a text box.
1938
1939 \begin{figure}[]
1940 \begin{center}
1941 \includegraphics[width=4in]{images/pairwise.pdf}
1942 \caption{{\bf Pairwise alignment of sequences.} Pairwise alignments of three selected sequences are shown in a textbox.}
1943 \label{pairwise}
1944 \end{center}
1945 \end{figure}
1946
1947 \pagebreak[2]
1948
1949 \section{Webservices}
1950 \label{jvwebservices}
1951 The term ``Webservices'' refers to a variety of data exchange
1952 mechanisms based on HTTP.\footnote{HTTP: Hyper-Text Transfer Protocol.} 
1953
1954 \parbox[c]{4.5in}{Jalview can exploit public webservices to access databases
1955 remotely, and also submit data to public services by opening pages with your web browser. These types of
1956 services are `one-way', {\sl i.e.} data is either sent to the webservice or
1957 retrieved from it by Jalview. The desktop application can also interact
1958 with `two-way' remote analysis services in order to offload computationally
1959 intensive tasks to High Performance Computing facilities. Most of these two-way
1960 services are provided by {\bf Ja}va {\bf B}ioinformatics {\bf A}nalysis {\bf
1961 W}eb {\bf S}ervice (JABAWS) servers\footnote{See
1962 http://www.compbio.dundee.ac.uk/jabaws for more information and to download
1963 your own server.}, which provides an easily installable system for performing
1964 a range of bioinformatics analysis tasks. }
1965 \parbox[c]{1.75in}{\includegraphics[width=1.65in]{images/wsmenu.pdf}}
1966
1967 \subsection{One-way web services}
1968
1969 There are three types of one way service in jalview. Database services,
1970 which were introduced in in Section \ref{fetchseq}, provide sequence and
1971 alignment data. They can also be used to add sequence IDs to an alignment
1972 imported from a local file, prior to further annotation retrieval, as described
1973 in Section \ref{featuresfromdb}. A second type of one way service is provided
1974 by Jalview's DAS sequence feature retrieval system, which is described
1975 in Section \ref{dasfretrieval}. The final type of one way service are sequence
1976 and ID submission services, exemplified by the `Envision2 Services' provided
1977 by the ENFIN Consortium\footnote{ENFIN is the European Network for Functional
1978 INtegration. Please see http://www.enfin.org for more information. }.
1979
1980 \subsubsection{One-way submission services}
1981 Jalview can use the system's web browser to submit sets of sequences and
1982 sequence IDs to web based applications. Single sequence IDs can be passed to
1983 a web site using the user definable URL links listed under the {\sl
1984 Links} submenu of the sequence ID popup menu. These are configured
1985 in the {\sl Connections} tab of the {\sl Preferences} dialog box.
1986
1987 The Envision 2 services presented in the webservice menu provides are the first
1988 example of one-way services where multiple sequences or sequence IDs can be
1989 sent. The {\sl Web service $\Rightarrow$ Envision 2 Services} menu entry
1990 provides two sub-menus that enable you to submit the sequences or IDs
1991 associated with the alignment or just the currently selected sequences to one
1992 of the Envision2 workflows. Selecting any one will open a new browser window on
1993 the Envision2 web application. The menu entries and their tooltips provide
1994 details of the Envision2 workflow and the dataset set that will be submitted
1995 ({\sl i.e.} the database reference type, or associated sequence subset). Please
1996 note, due to technical limitations, Jalview can currently only submit small
1997 numbers of sequences to the workflows - if no sequence or ID submissions are
1998 presented in the submenus, then try to select a smaller number of sequences to
1999 submit.
2000
2001 \subsection{Remote Analysis Web Services}
2002 Remote analysis services enable Jalview to use external computational
2003 facilities. There are curently three types of service - multiple sequence
2004 alignment, protein secondary structure prediction, and alignment analysis.
2005 Many of these are provided by JABA servers, which are described at the end of
2006 this section. In all cases, Jalview will construct a job based on the alignment
2007 or currently selected sequences, ask the remote server to run the job, monitor
2008 status of the job and, finally, retrieve the results of the job and display
2009 them. The Jalview user is kept informed of the progress of the job through a
2010 status window.
2011
2012 Currently, web service jobs and their status windows are not stored in Jalview
2013 Project Files\footnote{This may be rectified in future versions.}, so it is
2014 important that you do not close Jalview whilst a job is running. It is also
2015 essential that you have a continuous network connection in order to
2016 successfully use web services from Jalview, since it periodically checks the
2017 progress of running jobs.
2018
2019
2020 \subsection{JABA Web Services for sequence alignment and analysis}
2021 \label{jabaservices}
2022 JABA stands for ``JAva Bioinformatics Analysis'', which is a system developed
2023 by Peter Troshin and Geoff Barton at the University of Dundee for running
2024 computationally intensive bioinformatics analysis programs. A JABA installation
2025 typically provides a range of JABA web services (JABAWS) for use by other
2026 programs, such as Jalview.
2027
2028 Exercises in the remainder of this section will demonstrate the simplest way of
2029 installing JABA on your computer, and configuring Jalview so it can access the JABA services. If you
2030 need any further help or more information about the services, please go to the
2031 \href{http://www.compbio.dundee.ac.uk/jabaws}{JABAWS home page}.
2032 %% \subsubsection{Aims}
2033 %%  \begin{list}{$\bullet$}{}
2034 %%  \item Gain experience using the different alignment services provided by
2035 % JABA
2036 %%\item Learn about the way that Jalview stores user presets for JABA services
2037 %%\item Learn how to install JABA services and configure Jalview to access them
2038 %%\end{list}
2039
2040 \subsection{Changing the Web Services menu layout}
2041 \label{changewsmenulayout}
2042 If you are working with a lot of different JABA services, you may wish to
2043 change the way Jalview lays out the web services menu. You can do this from the Web Services tab of the {\sl Preferences} dialog box. 
2044
2045 \exercise{Changing the Layout of the Web Services Menu}{
2046 \label{changewsmenulayoutex}
2047 \exstep{Make sure you have loaded an alignment into Jalview, and examine the
2048 current layout of the alignment window�s {\sl Web Service} menu.}
2049 \exstep{Open the preferences dialog box and select the web services tab.}
2050 \exstep{Ensure the {\sl Enable JABAWS services} checkbox is selected, and unselect
2051 the {\sl Enable Enfin Services} checkboxes.}
2052 \exstep{Hit {\sl Refresh Services} to update the web services menu -- once the
2053 progress bar has completed, open the {\sl Web Service} menu to view the changes.}
2054 \exstep{Select the {\sl Index by host} checkbox and refresh the services once again.
2055
2056 {\sl Observe the way the layout of the JABAWS Alignment submenu changes.}
2057 }
2058 \exstep{Do the same with the {\sl Index by type} checkbox.} 
2059 }
2060
2061 Jalview provides these options for configuring the layout of the  {\sl Web Service}
2062 menu because different Jalview users may have access to a different number of
2063 JABA services, and each will have their own preference regarding the layout of
2064 the menu.
2065
2066 \begin{figure}[htbc]
2067 \begin{center}
2068 \includegraphics[width=3in]{images/jvjabawsconfig.pdf}
2069 \caption{{\bf The Jalview Web Services preferences panel.} Options are provided
2070 for configuring the list of JABA servers that Jalview will use, enabling and
2071 disabling Enfin services, and configuring the layout of the web services
2072 menu.}
2073 \end{center}
2074 \end{figure}
2075
2076 \subsection{Running your own JABA server}
2077 You can download and run JABA on your own machine using the `VMWare' or
2078 VirtualBox virtual machine environments. If you would like to learn how to do
2079 this, there are full instructions at the
2080 \href{http://www.compbio.dundee.ac.uk/jabaws/}{JABA web site}.
2081
2082 \exercise{Installing a JABA Virtual Machine on your computer}{
2083 \label{jabawsvmex}{\sl This tutorial will demonstrate the simplest way of
2084 installing JABA on your computer, and configuring Jalview so it can access the JABA services. 
2085
2086 {\bf Prerequisites}
2087
2088 You will need a copy of VMWare Player/Workstation/Fusion on your machine.
2089 }
2090
2091 \exstep{If you do not have VMWare player installed, download it from
2092 www.vmware.com (this takes a few minutes -- you will need to register and wait
2093 for an email with a download link).}
2094 \exstep{Download the JABA virtual appliance archive called `jaba-vm.zip' from
2095 \textsf{http://www.compbio.dundee.ac.uk/jabaws/archive/jabaws-vm.zip}
2096
2097 WARNING: This is large (about 300MB) and will take some time to download.
2098 }
2099 \exstep{Unpack the archive's contents to a place on your machine with at least
2100 2GB of free space.
2101
2102 (On Windows, right click on the archive, and use the 'Extract archive..' option).
2103 }
2104 \exstep{Open the newly extracted directory and double click the VMWare virtual
2105 machine configuration file (jabaws.vcf). This will launch the VMWare player.
2106 }
2107 \exstep{Once VMWare player has started up, it may ask the question ``Did you move or copy
2108 this virtual appliance?'' -- select `Copy'.}
2109 \exstep{You may be prompted to download the VMWare linux tools. These are not
2110 necessary, so close the window or click on `Later'.}
2111 \exstep{You may also be prompted to install support for one or more devices (USB
2112 or otherwise). Say `No' to these options.}
2113 \exstep{Once the machine has loaded, it will display a series of IP addresses
2114 for the different services provided by the VM. Make a note of the JABAWS URL --
2115 this will begin with `http:' and end with `/jabaws''.}
2116 }
2117
2118 \exercise{Configuring Jalview to access your new JABAWS virtual appliance}{
2119 \label{confnewjabawsappl}
2120 \exstep{Start Jalview (If you have not done so already).} 
2121 \exstep{Enable the Jalview Java Console by selecting its option from the Tools
2122 menu.
2123
2124 {\sl Alternately, use the System Java console if you have
2125 configured it to open when Jalview is launched, {\sl via} your system's Java
2126 preferences (under the `Advanced' tab on Windows).}}
2127 \exstep{Open the {\sl Preferences} dialog and locate the Web Services tab.}
2128 \exstep{Add the URL for the new JABAWS server you started in Exercise
2129 \ref{jabawsvmex} to the list of JABAWS urls using the `New Service
2130 URL' button.}
2131 \exstep{You will be asked if you want to test the service. Hit `Yes' to do this
2132 -- you should then see some output in the console window.
2133
2134 {\sl Take a close look at the output in the console.  What do you think is
2135 happening?}
2136 }
2137 \exstep{Hit OK to save your preferences -- you have now added a new JABA
2138 service to Jalview!}
2139 \exstep{Try out your new JABA services by loading the ferredoxin sequences from
2140 http://www.jalview.org/tutorial/alignment.fa}
2141 \exstep{Launch an alignment using one
2142 of the JABA methods provided by your server. It will be listed under the JABAWS Alignment submenu of the {\sl Web Service} menu on the alignment window.
2143
2144 {\sl Note: You can watch the JABA VM appliance's process working by opening the
2145 process monitor on your system. (On Windows XP, this involves right-clicking the
2146 system clock and opening the task manager -- then selecting the 'Processes' tab
2147 and sort by CPU).}
2148 }
2149 }
2150
2151
2152 \subsubsection{Resetting the JABA services setting to their defaults}
2153 Once you have configured a JABAWS server and selected the OK button of the
2154 preferences menu, the settings will be stored in your Jalview preferences file,
2155 along with any preferences regarding the layout of the web services menu. If
2156 you should ever need to reset the JABAWS server list to its defaults, use the
2157 `Reset Services' button on the Web Services preferences panel.
2158
2159 \section{Multiple Sequence Alignment}
2160 \label{msaservices}
2161 Sequences can be aligned using a range of algorithms provided by JABA web
2162 services. These include ClustalW\footnote{{\sl ``CLUSTAL W: improving the
2163 sensitivity of progressive multiple sequence alignment through sequence weighting, position specific gap penalties and weight matrix choice."} Thompson JD, Higgins DG, Gibson TJ (1994) {\sl  Nucleic
2164 Acids Research} {\bf 22}, 4673-80}, Muscle\footnote{{\sl ``MUSCLE: a multiple
2165 sequence alignment method with reduced time and space complexity"} Edgar, R.C.
2166 (2004) {\sl BMC Bioinformatics} {\bf 5}, 113},  MAFFT\footnote{{\sl ``MAFFT: a
2167 novel method for rapid multiple sequence alignment based on fast Fourier
2168 transform"}  Katoh, K., Misawa, K., Kuma, K. and Miyata, T. (2002) {\sl 
2169 Nucleic Acids Research} {\bf 30}, 3059-3066.  and {\sl ``MAFFT version 5:
2170 improvement in accuracy of multiple sequence alignment"} Katoh, K., Kuma, K.,
2171 Toh, H. and Miyata, T. (2005) {\sl Nucleic Acids Research} {\bf 33}, 511-518.},
2172 ProbCons\footnote{PROBCONS: Probabilistic Consistency-based Multiple Sequence Alignment.
2173 Do, C.B., Mahabhashyam, M.S.P., Brudno, M., and Batzoglou, S.
2174 (2005) {\sl Genome Research} {\bf 15} 330-340.} and T-COFFEE\footnote{T-Coffee:
2175 A novel method for multiple sequence alignments. (2000) Notredame, Higgins and
2176 Heringa {\sl JMB} {\bf 302} 205-217}. Of these, T-COFFEE is the slowest, but also the most accurate. ClustalW is historically the most widely used. Muscle is faster than ClustalW and probably the most accurate for smaller alignments and MAFFT is probably the best for large
2177 alignments\footnote{Clustal Omega, which was released in 2011, is arguably the
2178 fastest and most accurate tool for protein multiple alignment, and is
2179 included in JABAWS 2.0.}.
2180
2181
2182 To run an alignment web service, select the appropriate method from the {\sl
2183 Web Service $\Rightarrow$  Alignment $\Rightarrow$ \ldots} submenu (Figure
2184 \ref{webservices}). For each service you may either perform an alignment with
2185 default settings, use one of the available presets, or customise the parameters
2186 with the `{\sl Edit and Run ..}' dialog box. Once the job is submitted, a
2187 progress window will appear giving information about the job and any errors that
2188 occur. After successful completion of the job, a new window is opened with the
2189 results, in this case an alignment. By default, the new alignment will be
2190 ordered in the same way as the input sequences; however, many alignment programs
2191 re-order the input to place homologous sequences close together. This ordering
2192 can be recovered using the `Original ordering' entry within the {\sl Calculate
2193 $\Rightarrow$ Sort } sub menu.
2194
2195 \begin{figure}[htbp]
2196 \begin{center}
2197 \parbox[c]{1.5in}{\includegraphics[width=1.5in]{images/ws1.pdf}}
2198 \parbox[c]{2.5in}{\includegraphics[width=2.5in]{images/ws2.pdf}}
2199 \parbox[c]{2in}{\includegraphics[width=2in]{images/ws3.pdf}}
2200 \caption{{\bf Multiple alignment via web services} The appropriate method is
2201 selected from the menu (left), a status box appears (centre), and the results
2202 appear in a new window (right)}
2203 \label{webservices}
2204 \end{center}
2205 \end{figure}
2206
2207 \subsubsection{Realignment}
2208
2209 The re-alignment option is currently only supported by ClustalW. When performing a re-alignment, Jalview submits the current selection to the alignment service complete with any existing gaps. This approach is useful when one wishes to align additional sequences to an existing alignment without any further optimisation to the existing alignment. The Re-alignment service provided by ClustalW in this case is effectively a simple form of profile alignment. 
2210
2211 \subsubsection{Alignments of sequences that include hidden regions}
2212
2213 If the view or selected region that is submitted for alignment contains hidden regions, then {\bf only the visible sequences will be submitted to the service}. Furthermore, each contiguous segment of sequences will be aligned independently (resulting in a number of alignment `subjobs' appearing in the status window). Finally, the results of each subjob will be concatenated with the hidden regions in the input data prior to their display in a new window. This approach ensures that 1) hidden column boundaries in the input data are preserved in the resulting alignment - in a similar fashion to the constraint that hidden columns place on alignment editing (see Section \ref{lockededits}), and 2) hidden columns can be used to preserve existing parts of an alignment whilst the visible parts are locally refined. 
2214
2215 \exercise{Multiple Sequence Alignment}{
2216 \exstep{ Close all windows and open the alignment at {\sf
2217 http://www.jalview.org/tutorial/unaligned.fa}.  Select {\sl
2218 Web Service $\Rightarrow$ Alignment $\Rightarrow$ Muscle with Defaults}. A window will open giving the job status. After a short time, a second window will open with the results of the alignment.} \exstep{Select the first sequence set by clicking on the window and try running ClustalW and MAFFT (from the {\sl Web Service $\Rightarrow$ Alignment} menu) on the same initial alignment. Compare them and you should notice small differences. }
2219 \exstep{Select the last three sequences in the MAFFT alignment, and de-align them with {\sl Edit $\Rightarrow$ Remove All Gaps}. Press [ESC] to deselect them and then submit the view for re-alignment with ClustalW.}
2220 \exstep{Use [CTRL]-Z to recover the alignment of the last three sequences in the MAFFT alignment. Once the ClustalW re-alignment has completed, compare the results of re-alignment of the three sequences with their alignment in the original MAFFT result.}
2221 \exstep{Select columns 60 to 125 in the original MAFFT alignment and hide them. Select {\sl Web Services $\Rightarrow$ Alignment $\Rightarrow$ Mafft with Defaults} to submit the visible portion of the alignment to MAFFT. When the web service job pane appears, note that there are now two alignment job status panes shown in the window.}
2222 \exstep{When the MAFFT job has finished, compare the alignment of the N-terminal visible region in the result with the corresponding region of the original alignment. If you wish, select and hide a few more columns in the N-terminal region, and submit the alignment to the service again and explore the effect of local alignment on the non-homologous parts of the N-terminal region.} 
2223 }
2224
2225
2226 \subsection{Customising the parameters used for alignment}
2227
2228 JABA web services allow you to vary the parameters used when performing a
2229 bioinformatics analysis. For JABA alignment services, this means you are
2230 usually able to modify the following types of parameters:
2231 \begin{list}{$\bullet$}{}
2232 \item Amino acid or nucleotide substitution score matrix
2233 \item Gap opening and widening penalties
2234 \item Types of distance metric used to construct guide trees
2235 \item Number of rounds of re-alignment or alignment optimisation  
2236 \end{list}
2237
2238
2239 \subsubsection{Getting help on the parameters for a service}
2240 Each parameter available for a method usually has a short description, which
2241 jalview will display as a tooltip, or as a text pane that can be opened under
2242 the parameter's controls. In the parameter shown in Figure
2243 \ref{clustalwparamdetail}, the description was opened by selecting the button on the left hand side. Online help for the
2244 service can also be accessed, by right clicking the button and selecting a URL
2245 from the pop-up menu that will open.
2246
2247 \begin{figure}[htbp]
2248 \begin{center}
2249 \includegraphics[width=2.5in]{images/clustalwparamdetail.pdf}
2250 \caption{{\bf ClustalW parameter slider detail}. From the ClustalW {\sl Clustal $\Rightarrow$ Edit settings and run ...} dialog box. }
2251 \label{clustalwparamdetail}
2252 \end{center}
2253 \end{figure} 
2254
2255 \subsection{Alignment Presets}
2256 The different multiple alignment algorithms available from JABA vary greatly in
2257 the number of adjustable parameters, and it is often difficult to identify what
2258 are the best values for the sequences that you are trying to align. For these
2259 reasons, each JABA service may provide one or more presets -- which are
2260 pre-defined sets of parameters suited for particular types of alignment
2261 problem. For instance, the Muscle service provides the following presets:
2262 \begin{list}{$\bullet$}{}
2263 \item Huge
2264 \item Protein alignments (fastest speed)
2265 \item Nucleotide alignments (fastest speed)
2266 \end{list}
2267
2268 The presets are displayed in the JABA web services submenu, and can also be
2269 accessed from the parameter editing dialog box, which is opened by selecting
2270 the `{\sl Edit settings and run ...}' option from the web service�s menu. If you have used
2271 a preset, then it will be mentioned at the beginning of the job status file shown
2272 in the web service job progress window.
2273
2274 \subsubsection{Alignment Service Limits}
2275 Multiple alignment is a computationally intensive calculation. Some JABA server
2276 services and service presets only allow a certain number of sequences to be
2277 aligned. The precise number will depend on the server that you are using to
2278 perform the alignment. Should you try to submit more sequences than a service
2279 can handle, then an error message will be shown informing you of the maximum
2280 number allowed by the server.
2281
2282 \subsection{User defined Presets}
2283 Jalview allows you to create your own presets for a particular service. To do
2284 this, select the `{\sl Edit settings and run ...}' option for your service,
2285 which will open a parameter editing dialog box like the one shown in Figure
2286 \ref{jwsparamsdialog}.
2287
2288 The top row of this dialog allows you to browse the existing presets, and
2289 when editing a parameter set, allows you to change its nickname. As you
2290 adjust settings, buttons will appear at the top of the parameters dialog that
2291 allow you to Revert or Update the currently selected user preset with your changes, Delete the current preset, or Create a new preset, if none exists with the given name. In addition to the parameter set name, you can also provide a short
2292 description for the parameter set, which will be shown in the tooltip for the
2293 parameter set's entry in the web services menu.
2294
2295 \begin{figure}[htbc]
2296 \center{
2297 \includegraphics[width=3in]{images/jvaliwsparamsbox.pdf}
2298 \caption{{\bf Jalview's JABA alignment service parameter editing dialog box}.}
2299 \label{jwsparamsdialog} }
2300 \end{figure}
2301
2302 \subsubsection{Saving parameter sets}
2303 When creating a custom parameter set, you will be asked for a file name to save
2304 it. The location of the file is recorded in the Jalview user preferences in the
2305 same way as a custom alignment colourscheme, so when Jalview is launched again,
2306 it will show your custom preset amongst the options available for running the
2307 JABA service.
2308
2309
2310 % \exercise{Creating and using user defined presets}{\label{createandusepreseex}
2311 % \exstep{Import the file at
2312 % \textsf{http://www.jalview.org/tutorial/fdx\_unaligned.fa} into jalview.}
2313 % \exstep{Use the `{\slDiscover Database Ids}' function to recover the PDB cross
2314 % references for the sequences.}
2315 % \exstep{Align the sequences using the default ClustalW parameters.}
2316 % \exstep{Use the `{\sl Edit and run..}'
2317 % option to open the ClustalW parameters dialog box, and create a new preset using
2318 % the following settings:
2319 % \begin{list}{$\bullet$}{}
2320 % \item BLOSUM matrix (unchanged)
2321 % \item Gap Opening and End Gap penalties = 0.05
2322 % \item Gap Extension and Separation penalties = 0.05
2323 % \end{list}
2324
2325 % As you edit the parameters, buttons will appear on the dialog box
2326 % allowing you revert your changes or save your settings as a new parameter
2327 % set.
2328
2329 % Before you save your settings, remeber to give them a meaningful name by editing
2330 % the text box at the top of the dialog box.
2331 % }
2332 % \exstep{Repeat the alignment using your new parameter set by selecting it from
2333 % the {\sl ClustalW Presets menu}.} 
2334 % \exstep{These sequences have PDB structures associated with them, so it is
2335 % possible to compare the quality of the alignments.
2336
2337 % Use the {\sl View all {\bf N}
2338 % structures} option to calculate the superposition of 1fdn on 1fxd for both
2339 % alignments (refer to section \ref{superposestructs} for instructions). Which
2340 % alignment gives the best RMSD ? }
2341 % \exstep{Apply the same alignment parameter settings to the example alignment
2342 % (available from \textsf{http://www.jalview.org/examples/uniref50.fa}). 
2343
2344 % Are there differences ? If not, why not ?
2345 % }
2346 % }
2347
2348
2349 \section{Protein Secondary Structure Prediction}
2350 \label{protsspredservices}
2351 Protein secondary structure prediction is performed using the
2352 Jpred\footnote{{\sl ``The Jpred 3 Secondary Structure Prediction Server''} Cole, C., Barber, J. D. and Barton, G. J. (2008) {\sl Nucleic Acids Research} {\bf 36}, (Web Server Issue) W197-W201
2353
2354 {\sl ``Jpred: A Consensus Secondary Structure Prediction Server''} Cuff, J. A.,
2355 Clamp, M. E., Siddiqui, A. S., Finlay, M. and Barton, G. J. (1998) {\sl
2356 Bioinformatics} {\bf 14}, 892-893} server at the University of
2357 Dundee\footnote{http://www.compbio.dundee.ac.uk/www-jpred/}. The behaviour of
2358 this calculation depends on the current selection:
2359 \begin{list}{$\circ$}{}
2360 \item If nothing is selected, Jalview will check the length of each alignment row to determine if the visible sequences in the view are aligned.
2361 \begin{list}{-}{}
2362               \item If all rows are the same length (often due to the
2363               application of the {\sl Edit $\Rightarrow$ Pad Gaps} option), then
2364               a JPred prediction will be run for the first sequence in the
2365               alignment, using the current alignment as the profile to use for prediction.
2366               \item  Otherwise, just the first sequence will be submitted for a
2367               full JPred prediction.
2368 \end{list}
2369 \item If just one sequence (or a region in one sequence) has been selected, it
2370 will be submitted to the automatic JPred prediction server for homolog detection
2371 and prediction.
2372 \item If a set of sequences are selected, and they appear to be aligned using
2373 the same criteria as above, then the alignment will be used for a JPred
2374 prediction on the first sequence in the set (that is, the one that appears first in the alignment window).
2375 \end{list}
2376 Jpred is launched in the same way as the other web services. Select {\sl Web
2377 Services $\Rightarrow$ Secondary Structure Prediction $\Rightarrow$ JNet
2378 Secondary Structure Prediction}{\footnote JNet is the Neural Network based
2379 secondary structure prediction method that the JPred server uses.} from the
2380 alignment window menu (Figure \ref{jpred}).
2381 A status window opens to inform you of the progress of the job. Upon completion, a new alignment window opens and the Jpred
2382 predictions are included as annotations. Consult the Jpred documentation for
2383 information on interpreting these results.
2384
2385 \begin{figure}[htbp]
2386 \begin{center}
2387 \includegraphics[width=2.25in]{images/jpred1.pdf}
2388 \includegraphics[width=3in]{images/jpred2.pdf}
2389 \caption{{\bf Secondary Structure Prediction} Status (left) and results (right) windows for JNet predictions. }
2390 \label{jpred}
2391 \end{center}
2392 \end{figure}
2393
2394 \subsubsection{Hidden Columns and JNet Predictions}
2395 \label{hcoljnet}
2396 Hidden columns can be used to exclude parts of a sequence or profile from the
2397 input sent to the JNet service. For instance, if a sequence is known to include
2398 a large loop insertion, hiding that section prior to submitting the JNet
2399 prediction can produce different results. In some cases, these secondary structure predictions can be more reliable for sequence on either side of the insertion\footnote{This, of course, cannot be guaranteed.}. Prediction results returned from the service will
2400 be mapped back onto the visible parts of the sequence, to ensure a single frame
2401 of reference is maintained in your analysis.
2402
2403 \exercise{Secondary Structure Prediction}{
2404 \label{secstrpredex}
2405 \exstep{ Open the alignment at \textsf{http://www.jalview.org/tutorial/alignment.fa}. Select the sequence {\sl FER\_MESCR} by clicking on the sequence ID. Then select {\sl Web Services $\Rightarrow$ Secondary Structure Prediction $\Rightarrow$ JNet Secondary Structure Prediction} from the alignment window menu. A status window will appear and after some time (about 2-4 min) a new window with the JPred prediction will appear. Note that the number of sequences in the results window is many more than in the original alignment as JNet performs a PSI-BLAST search to expand the prediction dataset.
2406 }
2407 % TODO: check how long this takes - about 2 mins once it gets on the cluster.
2408 \exstep{
2409 Select a different sequence and perform a JNet prediction in the same way. There will probably be minor differences in the predictions.
2410 }
2411 \exstep{
2412 Select the second sequence prediction, and copy and paste it into the first
2413 prediction window. You can now compare the two predictions. Jnet secondary structure prediction annotations are examples of {\bf sequence-associated alignment annotation}.
2414 % which is described in Section \ref{seqassocannot} below.
2415 }
2416 \exstep{
2417 Select and hide some columns in one of the profiles that were returned from the JNet service, and then submit the profile for prediction again. 
2418 }
2419 \exstep{
2420 When you get the result, verify that the prediction has not been made for the
2421 hidden parts of the profile, and that the JPred reliability scores differ from the prediction made on the full profile.
2422
2423 {\sl Note: you may want to keep this data for use in exercise \ref{viewannotfileex}.}
2424 }
2425 }
2426
2427
2428 \section{Features and Annotation}
2429 \label{featannot}
2430 Features and annotations are additional information that is overlaid on the sequences and the alignment. Generally speaking, annotations are associated with columns in the alignment. Features are associated with specific residues in the sequence. 
2431
2432 Annotations are shown below the alignment in the annotation panel, and often reflect properties of the alignment as a whole.  The Conservation, Consensus and Quality scores are examples of dynamic annotation, so as the alignment changes, they change along with it. Conversely, sequence features are properties of the individual sequences, so they do not change with the alignment, but are shown mapped on to specific residues within the alignment. 
2433
2434 Features and annotation can be interactively created, or retrieved from external
2435 data sources. DAS (the Distributed Annotation System) is the primary source of
2436 sequence features, whilst webservices like JNet (see \ref{jpred} above) can be used to analyse a given sequence or alignment and generate annotation for it.
2437
2438
2439 \subsection{Creating sequence features}
2440 Sequence features can be created simply by selecting the area in a sequence (or sequences) to form the feature and selecting {\sl Selection $\Rightarrow$ Create Sequence Feature } from the right-click context menu (Figure \ref{features}). A dialogue box allows the user to customise the feature with respect to name, group, and colour. The feature is then associated with the sequence. Moving the mouse over a residue associated with a feature brings up a tool tip listing all features associated with the residue.
2441
2442 \begin{figure}[htbp]
2443 \begin{center}
2444 \includegraphics[width=2in]{images/feature1.pdf}
2445 \includegraphics[width=2.5in]{images/feature2.pdf}
2446 \includegraphics[width=1.5in]{images/feature3.pdf}
2447 \caption{{\bf Creating sequence features.} Features can readily be created from selections via the context menu and are then displayed on the sequence. }
2448 \label{features}
2449 \end{center}
2450 \end{figure}
2451
2452 Creation of features from a selection spanning multiple sequences results in the creation of one feature per sequence. Each feature remains associated with it's own sequence.
2453
2454 \subsection{Customising feature display}
2455
2456 Feature display can be toggled on or off by selecting the {\sl View
2457 $\Rightarrow$ Show Sequence Features} menu option. When multiple features are
2458 present it is usually necessary to customise the display. Jalview allows the
2459 display, colour, rendering order and transparency of features to be modified
2460 {\sl via} the {\sl View $\Rightarrow$ Feature Settings\ldots} menu option. This
2461 brings up a dialogue window (Figure \ref{custfeat}) which allows the
2462 visibility of individual feature types to be selected, colours changed (by
2463 clicking on the colour of each sequence feature type) and the rendering order
2464 modified by dragging feature types to a new position in the list. Dragging the
2465 slider alters the transparency of the feature rendering. The Feature
2466 Settings dialog also includes functions for more advanced feature shading
2467 schemes and buttons for sorting the alignment according to the distribution of
2468 features. These capabilities are described further in sections
2469 \ref{featureschemes} and \ref{featureordering}.
2470
2471 \begin{figure}[htbp]
2472 \begin{center}
2473 \includegraphics[width=4in]{images/features4.pdf}
2474 \caption{{\bf Multiple sequence features.} An alignment with JPred secondary structure prediction annotation below it, and many sequence features overlaid onto the aligned sequences. The tooltip lists the features annotating the residue below the mouse-pointer.}
2475 \end{center}
2476 \end{figure}
2477
2478 \begin{figure}[htbp]
2479 \begin{center}
2480 \includegraphics[width=4in]{images/features5.pdf}
2481 \caption{{\bf Customising sequence features.} Features can be recoloured, switched on or off and have the rendering order changed. }
2482 \label{custfeat}
2483 \end{center}
2484 \end{figure}
2485
2486 \subsection{Sequence Feature File Formats}
2487
2488 Jalview supports the widely used GFF tab delimited format\footnote{see
2489 http://www.sanger.ac.uk/resources/software/gff/spec.html} and its own Jalview
2490 Features file format for the import of sequence annotation. Features and
2491 alignment annotation are also extracted from other formats such as Stockholm,
2492 and AMSA. URL links may also be attached to features. See the online
2493 documentation for more details of the additional capabilities of the jalview
2494 features file.
2495
2496 \exercise{Creating features}{
2497 \exstep{Open the alignment at \textsf{http://www.jalview.org/tutorial/alignment.fa}. We know that the Cysteine residues at columns 97, 102, 105 and 135 are involved in iron binding so we will create them as features. Navigate to column 97, sequence 1. Select the entire column by clicking in the ruler bar. Then right-click on the selection to bring up the context menu and select {\sl Selection $\Rightarrow$ Create Sequence Feature}. A dialogue box will appear.
2498 }
2499 \exstep{
2500 Enter a suitable Sequence Feature Name  (e.g. ``Iron binding site") in the
2501 appropriate box. Click on the Feature Colour bar to change the colour if
2502 desired, add a short description (``One of four Iron binding Cysteines") and press OK. The features will then appear on the sequences. } \exstep{Roll the mouse cursor over the new features. Note that the position given in the tool tip is the residue number, not the column number.  To demonstrate that there is one feature per sequence, clear all selections by pressing [ESC] then insert a gap in sequence 3 at column 95. Roll the mouse over the features and you will see that the feature has moved with the sequence. Delete the gap you created.
2503 }
2504 \exstep{
2505 Add a similar feature to column 102. When the feature dialogue box appears, clicking the Sequence Feature Name box brings up a list of previously described features. Using the same Sequence Feature Name allows the features to be grouped.}
2506 \exstep{Select {\sl View $\Rightarrow$ Feature Settings\ldots} from the
2507 alignment window menu. The Sequence Feature Settings window will appear. Move
2508 this so that you can see the features you have just created. Click the check
2509 box for ``Iron binding site"  under {\sl Display} and note that display of this
2510 feature type is now turned off. Click it again and note that the features are
2511 now displayed. Close the sequence feature settings box by clicking OK or
2512 Cancel.} }
2513
2514 \subsection{Creating user defined annotation}
2515
2516 Annotations are properties that apply to the alignment as a whole and are visualized on rows in the annotation panel.
2517 To create a new annotation row, right click on the annotation label panel and select the {\sl Add New Row} menu option (Figure \ref{newannotrow}). A dialogue box appears. Enter the label to use for this row and a new row will appear.
2518
2519 \begin{figure}[htbp]
2520 \begin{center}
2521 \includegraphics[width=1.3in]{images/annots1.pdf}
2522 \includegraphics[width=2in]{images/annots2.pdf}
2523 \caption{{\bf Creating a new annotation row.} Annotation rows can be reordered by dragging them to the desired place.}
2524 \label{newannotrow}
2525 \end{center}
2526 \end{figure}
2527
2528 To create a new annotation, first select all the positions to be annotated on the appropriate row. Right-clicking on this selection brings up the context menu which allows the insertion of graphics for secondary structure ({\sl Helix} or {\sl Sheet}), text {\sl Label} and the colour in which to present the annotation (Figure \ref{newannot}). On selecting {\sl Label} a dialogue box will appear, requesting the text to place at that position. After the text is entered, the selection can be removed and the annotation becomes clearly visible\footnote{When annotating a block of positions, the text can be partly obscured by the selection highlight. Pressing the  [ESC] key clears the selection and the label is then visible.}. Annotations can be coloured or deleted as desired.
2529
2530 \begin{figure}[htbp]
2531 \begin{center}
2532 \includegraphics[width=2in]{images/annots3.pdf}
2533 \includegraphics[width=2in]{images/annots4.pdf}
2534 \includegraphics[width=2in]{images/annots5.pdf}
2535 \caption{{\bf Creating a new annotation.} Annotations are created from a selection on the annotation row and can be coloured as desired.}
2536 \label{newannot}
2537 \end{center}
2538 \end{figure}
2539
2540 \exercise{Annotating alignments}{
2541 \exstep{Load the alignment at \textsf{http://www.jalview.org/tutorial/alignment.fa}. Right-click on the annotation label for {\sl Conservation} to bring up the context menu and select {\sl Add New Row}. A dialogue box will appear asking for  {\sl Label for annotation}. Enter ``Iron binding site" and click OK. A new, empty, row appears.
2542 }
2543 \exstep{
2544 Navigate to column 97. Select column 97 on the new annotation row. Right click on the selection and select {\sl Label} from the context menu. Enter ``Fe" in the box and click OK. Right-click on the selection again and select {\sl Colour}. Choose a colour from the colour chooser dialogue and click OK. Press [ESC] to remove the selection.
2545 }
2546 \exstep{ Select columns 70-77 on the annotation row. Right-click and choose {\sl Sheet} from the context menu. You will be prompted for a label. Enter ``B" and press OK. A new line showing the sheet as an arrow appears. The colour of the label can be changed but not the colour of the sheet arrow. 
2547 }
2548 \exstep{Right click on the annotation row that you just created.  Select {\sl Export Annotation} and, in the {\bf Export Annotation} dialog box that will open, select the Jalview format and click the [To Textbox] button. 
2549
2550 The format for this file is given in the Jalview help. Press [F1] to open it, and find the ``Annotations File Format'' entry in the ``Alignment Annotations'' section of the contents pane. }
2551
2552 \exstep{Export the file to a text editor and edit the file to change the name of the annotation row. Save the file and drag it onto the alignment view.}
2553 \exstep{Try to add an additional helix somewhere along the row by editing the file and re-importing it.
2554 {\sl Hint: Use the {\bf Export Annotation} function to view what helix annotation looks like in a jalview annotation file.}}
2555 \exstep{Use the {\sl Alignment Window $\Rightarrow$ File $\Rightarrow$ Export Annotations...} function to export all the alignment's annotation to a file.}
2556 \exstep{Open the exported annotation in a text editor, and use the {\bf Annotation File Format} documentation to modify the style of the Conservation, Consensus and Quality annotation rows so they appear as several lines on a single line graph.
2557 {\sl Hint: You need to change the style of annotation row in the first field of the annotation row entry in the file, and create an annotation row grouping to overlay the three quantitative annotation rows.}
2558 }
2559 \label{viewannotfileex}\exstep{Recover or recreate the secondary structure
2560 prediction that you made in exercise \ref{secstrpredex}. Use the {\sl File $\Rightarrow$ Export Annotation} function to view the Jnet secondary structure prediction annotation row. Note the {\bf SEQUENCE\_REF} statements surrounding the row specifying the sequence association for the annotation. } }
2561
2562 \section{Importing features from databases}
2563 \label{featuresfromdb}
2564 Jalview supports feature retrieval from public databases either directly or {\sl via} the Distributed Annotation System (DAS\footnote{http://www.biodas.org/}). It includes built in parsers for Uniprot and EMBL records retrieved from the EBI. Sequences retrieved from these sources using the sequence fetcher (see Section \ref{fetchseq}) will already posess features. 
2565
2566 \subsection{Sequence Database Reference Retrieval}
2567 \label{fetchdbrefs}
2568 Jalview maintains a list of external database references for each sequence in
2569 an alignment. These are listed in a tooltip when the mouse is moved over the
2570 sequence ID when the {\sl View $\Rightarrow$ Sequence ID Tooltip $\Rightarrow$
2571 Show Database Refs } option is enabled. Sequences retrieved using the sequence
2572 fetcher will always have at least one database reference, but alignments
2573 imported from an alignment file generally have no database references.
2574
2575 \subsubsection{Database References and Sequence Coordinate Systems}
2576
2577 Jalview displays features in the local sequence's coordinate system which is
2578 given by its `start' and `end'. Any sequence features on the sequence will be
2579 rendered relative to the sequence's start position. If the start/end positions
2580 do not match the coordinate system from which the features were defined, then
2581 the features will be displayed incorrectly.
2582
2583 \subsubsection{Automatically discovering a sequence's database references}
2584 Jalview includes a function to automatically verify and update each sequence's
2585 start and end numbering against any of the sequence databases that the {\sl
2586 Sequence Fetcher} has access to. This function is accessed from the {\sl
2587 Webservice $\Rightarrow$ Fetch DB References} sub-menu in the Alignment
2588 window. This menu allows you to query either the set of {\sl Standard
2589 Databases}, which includes EMBL, Uniprot, the PDB, and the currently selected
2590 DAS sequence sources, or just a specific datasource from one of the submenus.
2591 When one of the entries from this menu is selected, Jalview will use the ID
2592 string from each sequence in the alignment or in the currently selected set to
2593 retrieve records from the external source. Any sequences that are retrieved are
2594 matched against the local sequence, and if the local sequence is found to be a
2595 sub-sequence of the retrieved sequence then the local sequence's start/end
2596 numbering is updated.  A new database reference mapping is created, mapping the
2597 local sequence to the external database, and the local sequence inherits any
2598 additional annotation retrieved from the database sequence.
2599
2600 The database retrieval process terminates when a valid mapping is found for a
2601 sequence, or if all database queries failed to retrieve a matching sequence.
2602 Termination is indicated by the disappearance of the moving progress indicator
2603 on the alignment window. A dialog box may be shown once it completes which
2604 lists sequences for which records were found, but the sequence retrieved from
2605 the database did not exactly contain the sequence given in the alignment (the
2606 {\sl ``Sequence not 100\% match'' dialog box}).
2607
2608 \exercise{Retrieving Database References}{
2609 \exstep{Load the example alignment at http://www.jalview.org/tutorial/alignment.fa}
2610 \exstep{Verify that there are no database references for the sequences by first
2611 checking that the {\sl View $\Rightarrow$ Sequence ID Tooltip $\Rightarrow$ Show
2612 Database IDs} option is selected, and then mousing over each sequence's ID.}
2613 \exstep{Use the {\sl Webservice $\Rightarrow$ Fetch DB References} menu option to retrieve database IDs for the sequences.}
2614 \exstep{Examine the tooltips for each sequence in the alignment as the retrieval progresses - note the appearance of new database references.}
2615 \exstep{Once the process has finished, save the alignment as a Jalview Project. 
2616
2617 Now close all the windows and open the project again, and verify that the database references and sequence features are still present on the alignment}
2618
2619 }
2620
2621 \subsection{Retrieving Features {\sl via} DAS}
2622 \label{dasfretrieval}
2623 Jalview includes a client to retrieve features from DAS annotation servers. To
2624 retrieve features, select {\sl View $\Rightarrow$ Feature Settings\ldots} from the alignment window menu. Select the {\sl DAS Settings} tab in the Sequence Feature Settings Window (Figure \ref{das}). A list of DAS sources compiled from the currently configured DAS registry\footnote{By default, this will be the major public DAS server registry maintained by the Sanger Institute: http://www.dasregistry.org} is shown in the left hand pane. Highlighting an entry on the left brings up information about that source in the right hand panel.
2625
2626 \begin{figure}[htbp]
2627 \begin{center}
2628 \includegraphics[width=2.5in]{images/das1.pdf}
2629 \includegraphics[width=2.5in]{images/das2.pdf}
2630 \caption{{\bf Retrieving DAS annotations.} DAS features are retrieved using the {\sl DAS Settings} tab (left) and their display customised using the {\sl Feature Settings} tab (right).}
2631 \label{das}
2632 \end{center}
2633 \end{figure}
2634
2635 Select appropriate DAS sources as required then click on {\sl Fetch DAS
2636 Features}. If you know of additional sources not listed in the configured
2637 registry, then you may add them with the {\sl Add Local Source} button. Use
2638 the {\sl Authority},{\sl Type}, and {\sl Label} filters to restrict the list
2639 of sources to just those that will return features for the sequences in the
2640 alignment.
2641
2642 Following DAS feature retrieval, the {\sl Feature Settings} panel takes on a
2643 slightly different appearance (Figure \ref{das} (right)). Each data source is
2644 listed and groups of features from one data source can be selected/deselected
2645 by checking the labeled box at the top of the panel.
2646
2647
2648 \subsubsection{The Fetch Uniprot IDs dialog box}
2649 \label{discoveruniprotids}
2650 If any sources are selected which refer to Uniprot coordinates as their reference system, then you may be asked if you wish to retrieve Uniprot IDs for your sequence. Pressing OK instructs Jalview to verify the sequences against Uniprot records retrieved using the sequence's ID string. This operates in much the same way as the {\sl Web Service $\Rightarrow$ Fetch Database References } function described in Section \ref{fetchdbrefs}. If a sequence is verified, then the start/end numbering will be adjusted to match the Uniprot record to ensure that features retrieved from the DAS source are rendered at the correct position. 
2651
2652 \subsubsection{Rate of feature retrieval}
2653 Feature retrieval can take some time if a large number of sources is selected and if the alignment contains a large number of sequences. This is because Jalview only queries a particular DAS source with one sequence at a time, to avoid overloading it.  As features are retrieved, they are immediately added to the current alignment view. The retrieved features are shown on the sequence and can be customised as described previously.
2654
2655
2656 \exercise{Retrieving features with DAS}{
2657 \label{dasfeatretrexcercise}
2658 \exstep{Load the alignment at
2659 \textsf{http://www.jalview.org/tutorial/alignment.fa}.  Select {\sl View
2660 $\Rightarrow$ Feature Settings \ldots} from the alignment window menu. Select
2661 the {\sl DAS Settings} tab. A long list of available DAS sources is listed. Select a small number, eg Uniprot, DSSP, signalP and netnglyc. Click OK. A window may prompt whether you wish Jalview to map the sequence IDs onto Uniprot IDs. Click {\sl Yes}. Jalview will start retrieving features. As features become available they will be mapped onto the alignment. } \exstep{If Jalview is taking too long to retrieve features, the process can be cancelled with the {\sl Cancel Fetch} button. Rolling the mouse cursor over the sequences reveals a large number of features annotated in the tool tip. Close the Sequence Feature Settings window. }
2662 \exstep{Move the mouse over the sequence ID panel. Non-positional features such as literature references and protein localisation predictions are given in the tooltip, below any database cross references associated with the sequence.}
2663 \exstep{Search through the alignment to find a feature with a link symbol next to it. Right click to bring up the alignment view popup menu, and find a corresponding entry in the {\sl Link } sub menu. }
2664 % TODO this doesn't work ! \includegraphics[width=.3in]{images/link.pdf}
2665
2666 \exstep{
2667 Select {\sl View $\Rightarrow$ Feature Settings\ldots} to reopen the Feature Settings window. All the loaded feature types should now be displayed. Those at the top of the list are drawn on top of those below, obscuring them in the alignment view where they overlap. Move the feature settings window so that the alignment is visible and uncheck some of the feature types by clicking the tick box in the display column. Observe how the alignment display changes. Note that unselected feature types do not appear in the tool tip.
2668 }
2669 \exstep{Reorder the features by dragging feature types up and down the order in the Feature Settings panel. e.g. Click on {\sl CHAIN} then move the mouse downwards to drag it below {\sl DOMAIN}. Note that {\sl DOMAIN} is now shown on top of {\sl CHAIN} in the alignment window. Drag {\sl METAL} to the top of the list. Observe how the cysteine residues are now highlighted as they have a {\sl METAL} feature associated with them.
2670 }
2671
2672 \exstep{Press the {\sl Optimise Order} button. The features will be ordered according to increasing length, placing features that annotate shorter regions of sequence higher on the display stack.}
2673
2674 \exstep{Select {\sl File $\Rightarrow$ Export Features\ldots} from the Alignment window. You can choose to export the retrieved features as a GFF file, or Jalview's own Features format. 
2675 % TODO: describe working with features files and GFF
2676 }
2677 }
2678
2679 \subsection{Colouring features by score or description
2680 text}
2681 \label{featureschemes}
2682 Sometimes, you may need to visualize the differences in information carried by
2683 sequence features of the same type. This is most often the case when features
2684 of a particular type are the result of a specific type of database query or calculation. Here, they may also carry information within their textual description, or most commonly for calculations, a score related to the property being investigated. Jalview can shade sequence
2685 features using a graduated colourscheme in order to highlight these variations.
2686 In order to apply a graduated scheme to a feature type, select the `Graduated
2687 colour' entry in the Sequence {\sl Feature Type}'s popup menu, which is opened by
2688 right-clicking the {\sl Feature Type} or {\sl Color} in the {\sl Sequence Feature Settings} dialog box. Two types
2689 of colouring styles are currently supported: the default is quantitative
2690 colouring, which shades each feature based on its score, with the highest
2691 scores receiving the `Max' colour, and the lowest scoring features coloured
2692 with the `Min' colour. Alternately, you can select the `Colour by label'
2693 option to create feature colours according to the description text associated
2694 with each feature. This is useful for general feature types - such as
2695 Uniprot's `DOMAIN' feature - where the actual type of domain is given in the
2696 feature's description.
2697
2698 Graduated feature colourschemes can also be used to exclude low or
2699 high-scoring features from the alignment display. This is done by choosing your
2700 desired threshold type (either above or below), using the drop-down menu in the
2701 dialog box. Then, adjust the slider or enter a value in the text box to set the
2702 threshold for displaying this type of feature.
2703
2704 The feature settings dialog box allows you to toggle between a graduated and
2705 simple feature colourscheme using the pop-up menu for the feature type. When a
2706 graduated scheme is applied, it will be indicated in the colour column for
2707 that feature type - with coloured blocks or text to indicate the colouring
2708 style and a greater than ($>$) or less than ($<$) symbol to indicate when a
2709 threshold has been defined.
2710
2711 \subsection{Using features to re-order the alignment}
2712 \label{featureordering}
2713 The presence of sequence features on certain sequences or in a particular
2714 region of an alignment can quantitatively identify important trends in
2715 the aligned sequences. In this case, it is more useful to
2716 re-order the alignment based on the number of features or their associated scores, rather than simply re-colour the aligned sequences. The sequence feature settings
2717 dialog box provides two buttons: `Seq sort by Density' and `Seq sort by
2718 Score', that allow you to reorder the alignment according to the number of
2719 sequence features present on each sequence, and also according to any scores
2720 associated with a feature. Each of these buttons uses the currently displayed
2721 features to determine the ordering, but
2722 if you wish to re-order the alignment using a single type of feature, then you can do this from the {\sl Feature Type}'s
2723 popup menu. Simply right-click the type's style in the Sequence Feature Settings dialog
2724 box, and select one of the {\sl Sort by Score} and {\sl Sort by Density}
2725 options to re-order the alignment. Finally, if a specific region is selected,
2726 then only features found in that region of the alignment will be used to
2727 create the new alignment ordering.
2728
2729 \exercise{Shading and sorting alignments using sequence features}{
2730 \label{shadingorderingfeatsex}
2731 \exstep{Re-load the alignment from \ref{dasfeatretrexcercise}.
2732 }
2733 \exstep{Open the
2734 feature settings panel, and, after first clearing the current
2735 selection, press the {\em Seq Sort by Density} button a few times.}
2736 \exstep{Use the DAS fetcher to retrieve the Kyte and Doolittle Hydrophobicity
2737 scores for the protein sequences in the alignment.
2738 {\sl Hint: the nickname for the das source is `KD$\_$hydrophobicity'.}}
2739 \exstep{Change the feature settings so only the hydrophobicity features are
2740 displayed. Mouse over the annotation and also export and examine the GFF and
2741 Jalview features file to better understand how the hydrophobicity measurements
2742 are recorded.}
2743 \exstep{Apply a {\sl Graduated Colour} to the hydrophobicity annotation to
2744 reveal the variation in average hydrophobicity across the alignment.}
2745 \exstep{Select a range of alignment columns, and use one of the sort by feature buttons to order the alignment according to that region's average
2746 hydrophobicity.}
2747 \exstep{Save the alignment as a project, for use in exercise
2748 \ref{threshgradfeaturesex}.} }
2749
2750 \exercise{Shading alignments with combinations of graduated feature
2751 colourschemes}{
2752 \label{threshgradfeaturesex}
2753 \exstep{Reusing the annotated alignment from exercise
2754 \ref{shadingorderingfeatsex}, experiment with the colourscheme threshold to
2755 highlight the most, or least hydrophobic regions. Note how the {\sl Colour} icon for the {\sl Feature Type} changes when you change the threshold type and press OK.}
2756 \exstep{Change the colourscheme so
2757 that features at the threshold are always coloured grey, and the most
2758 hydrophobic residues are coloured red, regardless of the threshold value
2759 ({\em hint - there is a switch on the dialog to do this for you}).}
2760 \exstep{Enable the Uniprot {\em chain} annotation in the feature settings
2761 display and re-order the features so it is visible under the hydrophobicity
2762 annotation.}
2763 \exstep{Apply a {\sl Graduated Colour} to the {\em chain}
2764 annotation so that it distinguishes the different canonical names associated
2765 with the mature polypeptide chains.}
2766 \exstep{Export the alignment's sequence features using the Jalview and GFF file formats, to see how the different types of graduated feature
2767 colour styles are encoded. }
2768 }
2769 \section{Working with DNA}
2770 \label{workingwithnuc}
2771 Jalview was originally developed for the analysis of protein sequences, but
2772 now includes some specific features for working with nucleic acid sequences
2773 and alignments. Jalview recognises nucleotide sequences and alignments based on
2774 the presence of nucleotide symbols [ACGT] in greater than 85\% of the
2775 sequences. Built in codon-translation tables can be used to translate ORFs
2776 into peptides for further analysis. EMBL nucleotide records retrieved {\sl via} the
2777 sequence fetcher (see Section \ref{fetchseq}) are also parsed in order to
2778 identify codon regions and extract peptide products. Furthermore, Jalview
2779 records mappings between protein sequences that are derived from regions of a
2780 nucleotide sequence. Mappings are used to to transfer annotation between
2781 nucleic acid and protein sequences, and to dynamically highlight regions in
2782 one sequence that correspond to the position of the mouse pointer in another.
2783 %TODO Working with Nucleic acid sequences and structures.
2784 \subsection{Alignment and Colouring}
2785
2786 Jalview provides a simple colourscheme for DNA bases, but does not apply any
2787 specific conservation or substitution score model for the shading of
2788 nucleotide alignments. However, pairwise alignments performed using the {\sl Calculate $\Rightarrow$ Pairwise Alignment
2789 \ldots} option will utilise an identity score matrix to calculate alignment
2790 score when aligning two nucleotide sequences.
2791
2792 \subsubsection{Aligning Nucleic Acid Sequences}
2793
2794 Jalview has limited knowledge of the capabilities of the programs that
2795 are made available to it {\sl via} web services, so it is up to you, the user,
2796 to decide which service to use when working with nucleic acid sequences. The
2797 table below shows which alignment programs are most appropriate
2798 for nucleotide alignment. Generally, all will work, but some may be more suited
2799 to your purposes than others. We also note that none of these include
2800 support for taking RNA secondary structure prediction into account when aligning
2801 sequences. We expect that in the future, Jalview will fully support secondary
2802 structure aware RNA alignment.
2803
2804 \begin{table}{}
2805 \centering
2806 \begin{tabular}{|l|c|l|}
2807 \hline
2808 Program& NA support& Notes\\
2809 \hline
2810 ClustalW& Yes&\begin{minipage}[f]{3in}
2811 Default is to autodetect nucleotide
2812 sequences. Editable parameters include nucleotide substitution matrices and
2813 distance metrics.
2814 \end{minipage}
2815
2816 \\
2817 \hline
2818
2819 Muscle& Yes (treat U as T)&\begin{minipage}[f]{3in}
2820 Default is to autodetect nucleotide
2821 sequences. Editable parameters include nucleotide substitution matrices and
2822 distance metrics.
2823 \end{minipage}
2824
2825 \\
2826 \hline
2827
2828 MAFFT& Yes&\begin{minipage}[f]{3in}
2829 Will autodetect nucleotide sequences and use a hardwired substitution model
2830 (all amino-acid sequence related parameters are ignored). Unknown whether
2831 substitution model treats Uracil specially.
2832 \end{minipage}
2833
2834 \\
2835 \hline
2836
2837 ProbCons& No&\begin{minipage}[f]{3in}
2838 ProbCons has no special support for aligning nucleotide sequences. Whilst an
2839 alignment will be returned, it is unlikely to be reliable.
2840 \end{minipage}
2841
2842 \\
2843 \hline
2844
2845 T-COFFEE& Yes&\begin{minipage}[f]{3in}
2846 Sequence type is automatically detected and an appropriate
2847 parameter set used as required. A range of nucleotide specific
2848 score models are available.\end{minipage}
2849
2850 \\\hline
2851 \end{tabular}
2852 \caption{{\bf JABAWS Alignment programs suitable for aligning nucleic acid
2853 sequences.} All JABAWS alignment services will return an alignment if provided
2854 with RNA or DNA sequences, with varying reliability.}
2855 \label{nucleomsatools}
2856 \end{table}
2857
2858 \subsection{Translate cDNA}
2859
2860 The {\sl Calculate $\Rightarrow$ Translate cDNA} function in the alignment
2861 window is only available when working with a nucleic acid alignment. It uses the standard codon translation table given in the online help documentation to translate a nucleotide alignment, or the currently selected region, into a set of aligned peptide sequences. Any features or annotation present on the nucleotide alignment will also be translated, allowing DNA alignment analysis results to be transferred on to peptide products for further investigation.
2862
2863 \subsection{Linked DNA and Protein Views}
2864
2865 \parbox{3.5in}{
2866 Views of alignments involving DNA sequences are linked to views of alignments containing their peptide products in a similar way to views of protein sequences and views of their associated structures. Peptides translated from cDNA that have been fetched from EMBL records for DNA contigs are linked to their `parent' coding regions. Mousing over a region of the peptide highlights codons in views showing the original coding region.
2867 }\parbox{3in}{
2868 \begin{center}
2869 %\begin{figure}[htbp]
2870
2871 \includegraphics[width=2.8in]{images/cdnatranslinkedwin.pdf}
2872
2873 %\caption{{\bf Linked DNA and Protein Views.} }
2874 %\end{figure}
2875 \end{center}
2876 }
2877
2878
2879 \subsection{Coding regions from EMBL records}
2880
2881 Many EMBL records that can be retrieved with the sequence fetcher contain exons.
2882 Coding regions will be marked as features on the EMBL nucleotide sequence, and
2883 Uniprot database cross references will be listed in the tooltip displayed when
2884 the mouse hovers over the sequence ID. Uniprot database cross references
2885 extracted from EMBL records are sequence cross references, and associate a
2886 Uniprot sequence's coordinate system with the coding regions annotated on the
2887 EMBL sequence. Jalview utilises cross-reference information in two ways.
2888 \subsubsection{Retrieval of Protein or DNA Cross References}
2889 The {\sl Calculate $\Rightarrow$ Get Cross References } function is only available when Jalview recognises that there are protein/DNA cross-references present on sequences in the alignment. When selected, it retrieves the cross references from the alignment's dataset (a set of sequence and annotation metadata shared between alignments) or using the sequence database fetcher. This function can be used for EMBL sequences containing coding regions to open the Uniprot protein products in a new alignment window. The new alignment window that is opened to show the protein products will also allow dynamic highlighting of codon positions in the EMBL record for each residue in the protein product(s).
2890
2891 \subsubsection{Retrieval of protein DAS features on coding regions}
2892
2893 The Uniprot cross-references derived from EMBL records can be used by Jalview to visualize protein sequence features directly on nucleotide alignments. This is because the database cross references include the sequence coordinate mapping information to correspond regions on the protein sequence with that of the nucleotide contig. Jalview will use the Uniprot accession numbers associated with the sequence to retrieve features, and then map them onto the nucleotide sequence's coordinate system using the coding region location.
2894
2895 \begin{figure}[htbp]
2896 \begin{center}
2897 \label{dnadasfeatures}
2898 \includegraphics[width=5in]{images/dnadasfeatures.pdf}
2899
2900 \caption{Uniprot and PDB sum features retrieved {\sl via} DAS and mapped onto
2901 coding regions of EMBL record V00488 (an earlier version of Jalview is shown
2902 here).}
2903
2904 \end{center}
2905 \end{figure}
2906
2907 \exercise{Visualizing protein features on coding regions}
2908 {
2909 \exstep{Use the sequence fetcher to retrieve EMBL record V00488.}
2910 \exstep{Ensure that {\sl View $\Rightarrow$ Show Sequence Features} is checked and change the alignment view format to Wrapped mode so the distinct exons can be seen.}
2911 \exstep{Open the {\sl DAS Settings} tab in the {\sl Sequence Feature Settings\ldots} window and fetch features for V00488 from the Uniprot reference server, and any additional servers that work with the Uniprot coordinate system.}
2912 \exstep{Mouse over the features retrieved, note that they have been mapped onto the coding regions, and in some cases broken into several parts to cover the distinct exons.}
2913 \exstep{Open a new alignment view containing the Uniprot protein product with {\sl Calculate $\Rightarrow$ Get Cross References $\Rightarrow$ Uniprot } and examine the database references and sequence features. Experiment with the interactive highlighting of codon position for each residue.
2914 }
2915 }
2916
2917 % \chapter{Advanced Jalview}
2918
2919 % \section{Customising Jalview}
2920 % \subsection{Setting preferences}
2921
2922 % The Jalview Desktop stores configuration and history information in a file stored in the users home directory, called `.jalview\_properties'. Many of the options stored in this file are presented in the {\sl Desktop $\Rightarrow$ Tools $\Rightarrow$ Preferences\ldots} dialog. These preferences include default settings for : {\bf Visual} layout settings for alignment views and controlling the display of the default alignment, {\bf Connection} preferences such as the standard set of URL paths that are available from the links menu and the URL which is opened when a Sequence's ID is double clicked, {\bf Editing} settings like {\sl Pad Gaps} and autocalculation of consensus, {\bf Output} settings control the degree of meta-information written in alignment files and mode of EPS Figuregeneration, and finally the {\bf Das Settings} which allows the default DAS sources to be configured. 
2923
2924 % \subsection{Adding your own URL links}
2925
2926 % \subsection{Working with Databases and Database Cross References}
2927 % \label{getcrossrefs}
2928
2929 % {\sl Calculations $\Rightarrow$ Get Cross References }
2930
2931 % \section{Jalview IO Interface}
2932 % \subsection{Multiple views}
2933 % \subsection{Annotation files}
2934 % \subsection{Feature files}
2935 % \subsection{Moving sequence associated annotation}
2936 % \subsection{Propagating features}
2937 % \section{Structures}
2938 % \subsection{Working with Modeller files}
2939 % \subsection{Using local PDB files}
2940 % \section{Pairwise alignments}
2941
2942  \end{document}