TABLE OF CONTENTS
Laj is a tool for viewing and manipulating the output from pairwise alignment programs such as blastz. It can display interactive dotplot, pip, and text representations of the alignments, a diagram showing the locations of exons and repeats, and annotation links to other web sites containing additional information about particular regions.
The program is written in Java in order to provide a graphical user interface that is portable across a variety of computer platforms; indeed its name stands for "Local Alignments with Java". Currently it exists in two forms, a stand-alone application and a web-based applet, with slightly different capabilities. However, this help page will only discuss the applet.
This applet requires at least Java 1.2, and preferably Java 1.3 or higher. For best compatibility, Sun's Java Plug-in is recommended. Please see Installing the Java Plug-in for more information.
The Laj window is divided into several sections. Across the top you will see a menu/control bar, and below that two indicator lines for displaying information about the positions of the mouse pointer and the "mark" (red circle) respectively. The controls will be discussed individually in the Menus and Buttons section of this document.
The first graphical panel is a horizontal ruler that displays tick marks corresponding to positions in the first aligned sequence. These are intended to give you an immediate general feel for the location and scale of the region being displayed. Precise locations can be determined via the position indicator, which displays the exact coordinate of the mouse pointer.
The large middle panel displays a dotplot view of the alignments, with the first sequence (often human) along the horizontal x-axis and the second sequence (e.g., mouse) along the vertical y-axis. If the second sequence contains multiple contigs, they will appear as separate horizontal bands across the plot, each with its own y-axis coordinate system. Whenever the mouse pointer is in this panel, the position indicator displays its location in the format "x,y", where x is the position in the horizontal sequence and y is the position in the vertical sequence. If there are multiple contigs, then the first word of the contig name will be displayed as well.
Below the dotplot is a panel that provides links to additional information about various sequence regions. Each annotation is represented by a color-coded bar spanning the region's position in the first sequence. The bars' vertical positions are not meaningful; they are placed in rows only for convenience, to keep them from overlapping. Pointing to a particular bar will cause the position indicator to display the x coordinate of the pointer, and also the type and description of that bar's annotation; otherwise only the x coordinate will be shown. Clicking on a bar will open a separate browser window to visit the corresponding web site. If no annotation file was provided, this panel will not appear.
The next panel contains a schematic diagram of the known exons, repeats, and other features in the first sequence, if these files were provided. Again, the position indicator displays the x coordinate of the mouse pointer, and also identifies any features at that position.
The next panel displays a pip (percent identity plot) view of the alignments. This is similar to the dotplot, except that the vertical scale represents the percentage of matching nucleotides in each gap-free segment of a local alignment, instead of its position in the second sequence. Only the top half of the plot is shown, since segments matching less than 50% are not very interesting. An additional feature of this panel is that colored backgrounds, or "underlays", may be used to highlight regions of interest. The position indicator displays the horizontal coordinate and vertical percentage position of the mouse pointer, and it can also display labels for the colored regions if these were provided.
The bottom panel displays a nucleotide-level view of a single selected local alignment. (Initially it is blank, since you haven't selected anything yet.) The top row of this display shows the nucleotide sequence from the first species (x-axis in the dotplot), while the bottom row shows the sequence from the second one (y-axis). Both sequences will likely have had gaps inserted by the alignment program. The middle row contains symbols to indicate how well the nucleotides match at each position; this matching is case-insensitive to deal with soft masking, but non-nucleotide characters such as X or N never match anything, even themselves. Note that most of the local alignments will be much too long to fit across this window, so a scrollbar is provided; the relative size of the scrollbar's slider indicates what fraction of the alignment is shown in the window. Shaded "highlights" similar to the pip underlays may also appear. Whenever the mouse pointer is in this bottom panel, the position indicator displays its location in the format "n:x,y", where n is the column position in the text representation of the alignment (starting with 0), while x and y are the sequence positions in the top and bottom rows, respectively (starting with 1). Note that x and y do not include the gaps, but n does. Labels for any highlights at that position are also displayed.
With the exception of the text view, all of these panels use the same horizontal coordinate scale (i.e., position in the first sequence), and they are always kept vertically aligned so they can be compared easily.
You can select a particular local alignment in the dotplot or pip by clicking on one of its segments with the left mouse button. (Actually you don't have to click exactly on it, because Laj will automatically jump to the nearest point in the same contig if you miss.) The spot will be marked with a small red circle in both the dotplot and the pip, and the entire local alignment containing the mark will change color from black to red (each local alignment typically spans several gap-free "segments"). Also, the corresponding text view for that alignment will appear in the bottom panel with the selected position highlighted. This requires loading the sequence files, so it may take a few moments. Lastly, the mark indicator line will be filled in with information about the marked alignment and position, including the contig name if the second sequence is fragmented. Note that there is only one mark at a time, so the previous one, if any, will be unmarked.
In a similar fashion, clicking the left mouse button in the text view will move the mark (both the highlight and the red circle) to that position (though sometimes you have to click twice). However, gap positions cannot be selected in this manner because they do not correspond to pip segments; if you click in a gap, the left end of the gap is selected instead.
As mentioned earlier, clicking on an annotation bar will open a separate browser window to visit the corresponding web site, but clicking in the ruler or feature panel has no effect.
You can "zoom in" on a particular region by dragging out a rectangle with the left mouse button in any of the white panels (ruler, dotplot, annotations, features, or pip). All of these panels will always zoom together, to keep them lined up. This can be repeated until the maximum resolution is reached; after that Laj will display an error message. Note that selecting your zoom in a non-dotplot panel only zooms horizontally (the zoom rectangle is always full-height), so to keep the dotplot looking nice it is best to select your zoom there, and keep the zoom rectangle roughly proportional to the dimensions of the existing dotplot panel.
Holding down the right mouse button over any of the white
panels adds crosshairs at the mouse pointer's location, which
is convenient for determining whether two regions really line
up. If you have a one-button mouse, you can achieve the same
effect by applying the
Shift key when initially
pressing the mouse button.
 The circular mark and its local alignment are red when the background is white, but are displayed in different colors against other backgrounds to ensure good contrast.