SV visualization
Triage structural variant (SV) candidates in the SV inspector, then open the alignments at each breakpoint for the read-level evidence. The sections below say what those read patterns mean: which color scheme lifts which pattern out of the pileup, what each SV type looks like in short and long reads, and which view to open once a breakpoint is found. The alignments track guide covers what each control does.
End-to-end walkthroughs: Structural variants (Cancer GIAB) part 1: breakpoints,
Complex rearrangements and derivative alleles, Structural variants (1000 Genomes). How the SAM
format itself encodes SV evidence, in split alignments, the SA tag, pair
orientation, TLEN and clipping, is in
Structural variants and the SAM format.
Where the evidence is
A structural variant leaves three kinds of mark in an alignments track:
- Coverage. A deletion drops it between the breakpoints and a duplication raises it. An inversion or a translocation leaves it alone.
- Clipped reads. A read crossing a breakpoint ends there, and its overhang is soft-clipped. The insertion and clipping indicators flag a cluster of them above the coverage row before you zoom to the pileup, and soft clipping draws the clipped bases.
- Reads whose two halves land apart. In a paired-end library that is a pair
with an unexpected insert size or orientation. In a long-read library one read
spans the breakpoint and splits into a primary and a supplementary alignment,
joined by the
SAtag.
The rest of this page takes the third kind in turn, paired-end reads then long reads, then the views that show both sides of a breakpoint at once.
Paired-end reads
Pair orientation
Pair orientation is the strands a read's two mates aligned to. Color by →
Insert size and orientation paints an abnormal orientation in its own color,
and a normal one by its insert size, below. The colors follow
IGV's
and assume a standard fr (Illumina) library. SOLiD-style orientations are not
supported.
| Color | Name | Value | Description |
|---|---|---|---|
| LR (→ ←) | #d3d3d3 | Normal proper pair | |
| RL (← →) | #0099bb | Mates point away from each other | |
| LL (→ →) | #4d9a4d | Both mates on the forward strand | |
| RR (← ←) | #5555bb | Both mates on the reverse strand | |
| Inter-chromosomal | #af4d19 | Mate on another chromosome | |
| Mate unmapped | #000000 | Mate aligned nowhere | |
| Split read (inverted) | #9b30b0 | Supplementary segment on the opposite strand to its primary |
Colored this way, an inversion is a green LL bundle and a navy RR bundle spanning the same stretch, with magenta split reads at the breakpoints, in a pileup that is otherwise grey.
The green LL bundle and the navy RR bundle come from pairs that straddle a junction. An inversion turns a stretch of sequence around, and every read inside it with it, so a pair with one end inside the segment and one end outside has one end reversed and one not: both point the same way, forward-forward across the left junction and reverse-reverse across the right. The end inside the segment also maps to the mirrored position, which is why each bundle reaches across the segment. A pair wholly inside the segment, or wholly outside it, maps as an ordinary LR pair.
The duplication half of an inverted duplication has no orientation signature.
The call's INFO.CPX_INTERVALS names where the second copy went, and no pair in
the pileup states it.
Insert size
Insert size colors a read by how far apart its mates aligned: red for larger than expected, pink for smaller, light grey for normal. Expected is a band around the median insert.1 Under Insert size and orientation a pair of abnormal orientation takes its orientation's color instead.
| Color | Name | Value | Description |
|---|---|---|---|
| Inter-chromosomal | #af4d19 | Mate on another chromosome | |
| Insert larger than expected | #ff0000 | Deletion between the mates | |
| Insert smaller than expected | #f582c0 | Insertion between the mates | |
| Mate unmapped | #000000 | Mate aligned nowhere |
Color by → Insert size and orientation combines both. A pair of abnormal orientation takes its orientation's color whatever its insert, and a pair of normal orientation takes its insert's: red for the classic deletion, pink for an insertion. It combines both signals, so it is the usual first setting to try.
Read arcs
Read connections → Read arcs draws a bezier between the ends of each pair, in the color of the scheme in force. Concordant pairs make short local arcs, so a deletion reads as a bundle of long red arcs standing on the same two breakpoints, and a mate on another chromosome draws as a vertical line at the breakpoint. Reads describing the same connection draw as one arc thickened by how many there are, so the arcs count the support as well as locate it. Gene fusion calls and the DNA behind them counts a fusion's support that way.
Hover any arc for its classification. A read can have a grey LR fill and still have a colored arc: the read itself crosses the breakpoint, splits into a primary and a strand-flipped supplementary alignment, and the arc joining those takes the color of the pair class that spans the same junction, green or navy at an inversion. That is evidence from one molecule rather than from a pair.
SV channels
Every scheme above paints one pileup, so an event's evidence arrives mixed into the rows around it. Presets → SV channels takes the same reads apart into one band per kind of SV evidence, each with a coverage curve, its evidence reads and their arcs, and the sashimi arcs over coverage go away: deletion-type, duplication-type, inversion, a partner on another chromosome or unmapped, an SV-size insertion, and no SV evidence. A discordant pair files by its orientation and a split read by its junction, so short and long reads of one event fill the same band. Concordant pairs and every other read without SV evidence fill the last band, the depth the others are read against. The preset also sets Filter by → SV evidence → Only SV evidence, which hides rows and leaves every band's coverage counting all its reads, so the last band draws its coverage alone and the others draw only the reads that carry evidence. Which band fills names the rearrangement, and a band that stays empty under a call is a call with no read evidence behind it. A kind of evidence no read in the window carries gets no band.
SV evidence decides which reads are evidence: a split read whose placed pieces join, an insertion or deletion of 50 bp or more, or a discordant pair, with both ends placed. Filter by and Sort by use it, and SV kind, the Group by row this arrangement sets, bands a read, its mate and its split pieces together by the kind of SV they point at, so the last band holds exactly the reads the filter hides.
Long reads fill the same bands, a split read by the junction it crosses, so one event reads the same on both platforms.
Tools → Undo (Ctrl+Z) returns the track to how it was before the preset. Each setting the preset changes also stays in its own menu: Filter by → SV evidence → All reads draws every read in the bands, with the color scheme untouched. Structural variants (1000 Genomes) reads a complex 1000 Genomes call band by band.
Read cloud
Read cloud lays pairs out on the Y axis by the log distance between mates, so the insertion pairs lift clear of the background and how many reads span a breakpoint is countable. Chains with supplementary alignments are joined by an orange line, and Filter by keeps or hides the SV evidence and the reads without a mate.
Long reads
Split reads
A long read spans the whole event, so it has what a short-read pair could only infer. At an inversion it splits into three alignments, the middle one on the opposite strand. With View as pairs/link supplementary alignments on, those segments chain onto one row: the inverted middle paints in the reverse-strand color between two forward-strand segments, and an arc joins each breakpoint pair: green at the junction LL pairs span, navy at the one RR pairs span. A split read across a deletion draws a gold arc. One across a tandem duplication draws a teal arc, the color of the pairs that span it, and a teal loop under its row where the read maps back over itself.
Group by → Split reads splits the pileup into two sections: reads with a
supplementary alignment, and the rest. Together the two sections give the
genotype directly from the pileup, independent of the caller's GT field: a
locus where some reads invert and the rest run through unbroken is one inverted
copy and one uninverted.
One read against the reference
Right-click any read for Linear read vs ref or Dotplot of read vs ref, which lay one read out against every locus it touches. On a read spanning a breakpoint, the order it visits those loci in is the structure of the rearrangement. See one read against the reference.
Rebuilding a derivative allele
Where long reads cross every junction of a rearrangement, the allele they have can be assembled as a sequence and loaded as a separate assembly, with the reads realigned to it. Assembling it is an assembler's job — Flye, Shasta and hifiasm all do local assemblies of this kind — and JBrowse shows the contig against the reference as a synteny view. Complex rearrangements and derivative alleles does that with COLO829's der(3).
Signatures by SV type
| SV type | Read pairs | Coverage | Clipping and arcs |
|---|---|---|---|
| Deletion | red, insert larger than expected | drops between the breakpoints, halves for a heterozygote | clipped reads at both edges, unusually long arcs, gold split-read arcs |
| Insertion | pink, insert smaller than expected | unchanged | clipped reads at one site, a purple insertion indicator, mates unmapped once the insertion outruns the fragment |
| Inversion | green LL and dark blue RR at the junctions | unchanged | clipped reads at both breakpoints, green and navy split-read arcs |
| Tandem duplication | teal RL | elevated over the duplicated segment | teal split-read arcs jumping back upstream across the junction |
| Translocation | rust, mate on another chromosome | unchanged | a cluster of rust reads at one end, arcs drawn as verticals at the view edge |
Any one column has artifacts that produce it, and in segmental duplications and repeats all of them are common, so combine several before calling. Zoomed inside an inverted segment the interior reads look concordant, so the junctions are where to look. The clipped bases at an inversion breakpoint often have the short homology the junction formed on. For a translocation, open the breakpoint split view to see both ends at once.
Breakpoint split view
The breakpoint split view opens synchronized panels side by side, each centered on one breakpoint locus. Splines connect the reads that span the junction across the panels, and the variant call is drawn as a blue curve with feet over the side each end keeps. The header bar accepts location searches in either panel.
A spline takes the color its arc takes in the alignments track. The right end of the header, and the top of an SVG export, list the colors the view is drawing.
Inside one panel, a call whose glyph already spans both of its ends gets no curve, and neither do the reads of an alignments track that links its own reads.
Hovering a spline shades the reads it joins, every segment of the read in every panel it visits, and every other spline of the same read thickens alongside it. Untick Allow clicking connections in the view menu to turn the overlay, read splines and variant curves alike, back into a static picture.
Launching it
- From the SV inspector: click a feature in the circular overview, or the triangle dropdown on a table row. See the SV inspector guide.
- From variant feature details: click a BND or TRA variant in a variant track. The feature details panel has a button to open the split view, which loads any open alignments tracks.
- From alignment feature details: click a read with a supplementary alignment, for a split view centered on that read and its supplementary partner.
- From the circular genome view: click a chord and use the "Open breakpoints in split view" link in its Breakends section.
Multi-hop events
A read with several supplementary alignments visits more than two loci, and the view grows a panel per locus. The COLO829 tutorial follows one such chain across three chromosomes and opens this view from a callset record.
Following a chain of breakends
A BND record names one partner, so a launch from one record is two loci however many the rearrangement has. Follow further breakends at each end reaches the rest from the callset: at each end of the chain it looks for another junction leaving from within a kilobase of the same place, and takes it when there is exactly one, adding a panel per hop up to four. Only the two launches that can read the callset offer it, a variant track's right-click menu and a click on a chord drawn from that same file, and only for the stacked shape.
The walk treats two junctions leaving one locus as one molecule, which the caller does not assert, so it stops where that would be a guess: two open continuations at a locus, or a continuation leading back to a locus already on screen.
Phasing heterozygous SVs
For a heterozygous SV, the supporting reads all coming from one haplotype is
strong evidence for the call. Where the BAM/CRAM has been haplotagged (WhatsHap,
HiPhase), reads have an HP tag, and sorting, coloring or
grouping by it from the
track menu clusters each haplotype. Grouping goes furthest: each haplotype gets
a separate pileup section, and untagged reads get one too, so unphased support
stays visible. The phased trio tutorial covers
phased haplotypes end to end.
The deletion below is at 1:63,005,000-63,008,000 in the
hg19 demo:
open HG002 BAM ultralong nanopore+whatshap beside HG002 GIAB consensus SV
(VCF), then pick Group by → Tag... in the reads' track menu and enter
HP.
Working with large SVs
The pileup, read arcs and read cloud only render once the view is zoomed in far enough to load the reads, and a very large SV cannot be spanned in one pileup. For large or inter-chromosomal SVs:
- Survey the region with a BigWig coverage track, or a multi-quantitative track for tumor vs normal. It loads at any scale and makes copy-number changes visible at chromosome scale.
- Load the call set as a variant track for a compact overview, where clicking a feature navigates to it.
- Open the breakpoint split view for the breakpoint loci themselves. Each panel is a local window around one end, so the distance between them does not matter.
- Use the SV inspector for whole-genome triage before drilling in.
Whole-genome assembly comparison
Where a de novo assembly of the sample is available, aligning it back to the reference with minimap2 and loading the PAF as a synteny track gives a chromosome-scale view of the rearrangements. Complex events appear as off-diagonal blocks in the dotplot view, and dragging over one launches a base-level linear synteny view on the same alignment. The C-GIAB tutorial walks this through with the HG008 phased tumor assembly.
Summary
| Display / setting | How to enable | Best for |
|---|---|---|
| Pileup (default) | Default lower panel | Base-level detail, individual reads |
| Color by insert size and orientation | Color by in track menu | Long, short and abnormally oriented pairs |
| Read arcs | Read connections in track menu | Overview of long-range connections |
| SV channels | Presets in track menu | One band per kind of SV evidence, with arcs |
| Read cloud | Read connections in track menu | Counting discordant pairs, orientation per read |
| Linear read vs ref | Right-click on any read | Complex alignment of a single long read |
| Breakpoint split view | Feature details or SV inspector | Side-by-side inspection of both breakpoint loci |
| Group by HP tag | Group by in track menu | Confirming heterozygous SVs on one haplotype |
| Dotplot view | Launch from the Add menu | Chromosome-scale rearrangements (de novo assembly) |
| Linear synteny view | Add menu or dotplot selection | Base-level alignment between two genomes |
See also
- User guide: Alignments track
- User guide: SV inspector
- User guide: Circular genome view
- User guide: Variant track
- Config guide: Alignments track configuration
Notes
-
The band is
median ± 3·1.4826·MADrather thanmean ± 3σ, because the long right tail of large inserts inflates the standard deviation and pushes amean − 3σlower bound below zero, where no short insert is ever flagged. ↩