This user guide is a comprehensive compilation of all general UI navigation, tools/features available for some of the different track types, and other useful features for using JBrowse.
Use the navigation menu on the right to skip to a topic of interest, if applicable.
Navigating the UI
Linear genome view usage
To open a linear genome view (LGV), use the menu bar:
Linear genome view
You can scroll side to side using your mouse wheel or via click and drag. Left and right pan buttons found in the header of the LGV can also be used to scroll in their respective directions.
The zoom buttons and the slider bar found in the header of the linear genome view can be used to zoom in and out on the view
You can also hold the
Ctrl key and use your mousewheel or trackpad to scroll to zoom in and out.
Click and drag up or down on the drag handle on the track labels (indicated by six vertical dots) to reorder tracks.
Using the location search box
The location search box is located at the top of the LGV.
You can search a location in several ways when typing in the search box:
- Searching by region and location, e.g.
chr1 1 100
- Searching by assembly, region, and location, e.g.
- Searching discontinuous regions, delimited by a space, and opening them side-by-side, e.g.
- Searching in any of the above ways and appending [rev] to the end of the region will horizontally flip it, e.g.
- If configured, searching by gene name or feature keywords, e.g.
To configure name searching, you or the admin of the instance will need to create a "text index". See the configuration guide for more information.
To open a new track or connection, use the menu bar:
There is a circular plus (+) icon button inside the "Available tracks" widget that can also be used to access the "Add a track" form.
In the "Add a track" form, you can provide a URL to a file to load, or you can also open files from your local machine. In some cases, you need to provide an index (bigwig files for example have no index, but BAM/CRAM or tabix filetypes like VCF/GFF/BED tabix do). In some cases we can automatically infer the index e.g. if you provide a URL for a BAM and the index filename is bamfilename +'.bai' but you may need to manually supply it in some cases (index inference can't be done with files from your local machine)
The following file formats are supported in core JBrowse 2:
- VCF (Tabix-indexed)
- GFF3 (Tabix-indexed)
- BED (Tabix-indexed)
- JBrowse 1 nested containment lists (NCLists)
- plain text VCF, BED, CSV, TSV, BEDPE, STAR-fusion output (tabular formats)
- PAF (synteny/dotplot)
- Indexed FASTA/BGZip indexed FASTA
- .hic (Hi-C contact matrix visualization)
Additional data formats can be supported via plugins; checkout the plugin store.
For tabix files, TBI or CSI indexes are allowed. CSI or BAI is allowed for BAM. Only CRAI is allowed for CRAM. The index will be inferred for BAI or TBI files as filename+'.bai' for example, but if it is different than this, make sure to specify the index file explicitly.
Undo and redo
You can undo the closing of a view, track, or any other action in the UI with the Tools->Undo/Redo buttons. The keyboard shortcut "ctrl+z"/"cmd+z"(mac) work for undo as well as "ctrl+y"/"cmd+shift"z"(mac)
On JBrowse Web, the main menu bar has a "Share" button to enable users to share their sessions with other people. The share button generates a URL that can be sent to other users.
You cannot copy the URL in your address bar and send it to other users, you must use the "Share" button to share your session.
Sharing sessions is not available for JBrowse Desktop.
The session URL will contain the following:
- what views are on the screen, and settings for the views (e.g. track labels overlapping or offset)
- what tracks are in the view
- extra tracks that you added with the "Add track workflow"
- for the alignments track, the show soft clipping and sort settings on the pileup
- ...and more!
This means you can share links with your custom tracks with other users, without being a JBrowse admin!
Users can access track-specific functions by using the track menu, which is accessible from the track selecter itself ("..." icon) or on the track label (vertical "..."). Some functions are only available when the track is open e.g. from the track label, but more basic options like "About track" are available from the track menu on the track selector.
About track dialog
Using the track menu as described above, you can access the "About track" dialog.
Editing track configs
As a non-admin user, in order to edit a track config, you have to make a copy of the track. This will copy it to your "session tracks", which you can edit freely.
The scale bars accept a click-and-drag action to select a region. Rubberband selection can be performed on both the main (lower) and overview (upper) scale bars.
Track label positioning
Track labels can be positioned on their own row or overlapping the data to save vertical screen space. They can also be hidden. This is done by clicking on the hamburger menu for a specific view.
The view can be horizontally flipped, or reverse complemented, to make the coordinates go from right to left instead of left to right.
We use triangles pointing in the direction of the orientation in the overview bar to help indicate whether the app is horizontally flipped or not.
Here is an example of before and after horizontally flipping the view:
The sequence track shows the reference sequence and a three-frame translation. If the view is horizontally flipped, the sequence is "reverse complemented" so the bottom three translation frames go to the top, and the top frames go to the bottom.
Visualizing alignments is an important aspect of genome browsers. This guide will go over the main features of the "Alignments track."
The alignments track is a combination of a pileup and a coverage visualization.
The pileup is the lower part of the alignments track and shows each of the reads as boxes positioned on the genome.
By default the reads are colored red if they aligned to the forward strand of the reference genome, or blue if they aligned to the reverse strand.
The coverage visualization shows the depth-of-coverage of the reads at each position on the genome, and also draws using colored boxes any occurrence of mismatches between the read and the reference genome, so if 50% of the reads had a T instead of the reference A, half the height of the coverage histogram would contain a 'red' box.
Show soft clipping
If a read contains bases that do not map the the genome properly, they can either be removed from the alignment (hard clipping) or can be included, and not shown by default (soft clipping).
JBrowse 2 also contains an option to "show the soft clipping" that has occurred. This can be valuable to show the signal around a region that contains structural variation or difficult mappability.
Sort by options
The alignments tracks can also be configured to "sort by" a specific attribute for reads that span the center line.
By default the center line is not shown, but by showing it (detailed below) then you will obtain a better idea of what the "sort by" option is doing.
Showing the center line
- Open the hamburger menu in the top left of the linear genome view
- Select "Show center line"
The center line is used by the 'Sort by' function discussed in this section; the sort is performed using properties of the feature, or even exact base pair underlying the center line.
Sorting by base pair
Sorting by base pair will re-arrange the pileup so that the reads that have a specific base pair mutation at the position crossing the center line (which is 1bp wide) will be arranged in a sorted manner. To enable Sort by base pair:
- Open the track menu for the specific track using the vertical '...' in the track label
Sort, color and filter by tag
With these features, we can create expressive views of alignments tracks. For example, in the below step-by-step guide, it shows how to color and sort the reads by the HP tag:
Color by modifications/methylation
If you have data that marks DNA/RNA modifications using the MM tag in BAM/CRAM format, then the alignments track can use these merks to color these modification. It uses two modes:
- Modifications mode - draws the modifications as they are
- Methylation mode - draws both unmodified and modifified CpGs (unmodified positions are not indicated by the MM tag and this mode considers the sequence context)
Color by orientation
JBrowse uses the same color scheme as IGV for coloring by pair orientation. These pair orientations can be used to reveal complex patterns of structural variation.
See IGV's Interpreting Color by Pair Orientation guide for further details on interpreting these pair orientations.
The alignments track will draw sashimi-track style arcs across spliced alignments (indicated by N in the CIGAR string). If the reads additionally are tagged with XS tags, it will try to draw the arcs using the strand indicated by the alignment.
You can disable these by clicking on the track menu (vertical "..." next to track label, then hovering over SNPCoverage options, and unchecking "Draw arcs").
Insertion and clipping indicators
The alignments track will also draw an upside-down histogram of insertion and soft/hard clipped read counts at all positions, and mark significant positions (covering 30% of the reads) with a colored triangle.
Also, insertions that are larger than 10bp are marked with a larger purple rectangle, seen in the screenshot below. Generally, long reads span larger insertions better, so this feature is more prominant with large reads.
You can disable these by clicking on the track menu (vertical "..." next to track label, then hovering over SNPCoverage options, and unchecking "Draw insertion/clipping indicators" and "Draw insertion/clipping counts").
Visualizing genome signals, whether it is read depth-of-coverage or other signal, can often be done by using BigWig or other quantitative feature files.
Viewing whole-genome coverage for profiling CNV
You can refine the resolution of BigWig tracks, and view whole genome coverage to get detailed global views of CNV, for example from whole-genome coverage profiling.
Here is a short picture guide to setup a whole-genome view of a BigWig for CNV coverage visualization:
- Open your BigWig track
- Go to the view menu and select "Show all assembly regions"
- Adjust the "Autoscale type" to your liking, the new options for "Local +/- 3sd" allows the autoscaling to avoid outliers
- Go to the track menu and select "Turn off histogram fill", which then shows only a dot for each point on the graph
- Go to the track menu and select "Resolution->Finer resolution" a couple times until resolution looks nice
All tracks have a drag handle on the bottom, which you can drag down to make the track taller.
In 2.1.0, we created the ability to have "Multi-quantitative tracks" which is a single track composed of multiple quantitative signals, which have their Y-scalebar synchronized. There are 5 rendering modes for the multi-quantitative tracks.
You can interactively change these settings through the track menu.
With the "multi-row" settings (multirowxyplot, multirowline, multidensity) the track colors are not modified. For the overlapping (xyplot, multiline), the tracks will be autoassigned a color from the palette. You can manually customize the subtrack colors from the track menu as well.
Oftentimes, one of the outliers on one of the subtracks may affect the Y-scalebar too much, so it is often helpful to use the "Autoscale type->Local +/- 3SD" setting (3 standard deviations are displayed). Manually configuring the min or max scores is available via the track menu also.
Adding multi-quantitative tracks via the UI
There are several ways to create multi-quantitative tracks from scratch.
- Using the add track panel to open up a list of URLs for bigwig files, or from several local tracks from your machine
- Using the track selector to add multiple tracks to your current selection, and then creating a multi-wiggle track from the tracks in your selection
- Hardcoding the multiwiggle track in your config file (see multi-quantitative track configuration for more info)
Visualizing variant tracks from the VCF format alongside the original alignment evidence track is a common workflow for validating your results, shown below:
The variant features have a specialized widget that contains a table indicating all the calls that were made in a multi-sample VCF. Some VCF files, like the 1000 genomes VCF, can contain thousands of samples in a single file. This table can display the details.
The dotplot view is a 2D comparative view that can display alignments between different genome assemblies, or even compare a long-read or NGS short-read against the genome.
Opening a dotplot view or synteny view
- Navigate on the header bar
Linear synteny view
- Select the genome assemblies of interest
- Optionally, add a .paf, .out (MashMap), .delta (Mummer), .chain, .anchors or .anchors.simple (MCScan) file
Opening a synteny view from a dotplot view
You can open a synteny view from a dotplot view by selecting a region on the dotplot and clicking "Open linear synteny view", shown below:
Long read vs reference plots
You can also launch a dotplot view that compares a long read to the reference genome:
- With your alignments track open, right click on an alignment
- Select "Dotplot read vs ref" or "Linear read vs ref" in the context menu
Visualizing Hi-C data can be performed with .hic files generated by the Juicebox software suite. It uses the hic-straw module developed by the juicebox/igv.js team to visualize it in JBrowse.
Currently configuration options are basic for Hi-C tracks, see the comprehensive config guide for info about configuring Hi-C tracks.
The Structural Variant (SV) inspector is a "workflow" that is designed to help users inspect structural variant calls.
Opening the SV inspector
We can start the SV inspector by launching it from the App level menu bar
This will bring up an "import form" that asks you for your SV evidence.
The following formats are supported:
- CSV, TSV
- VCF or VCF.gz (plain text VCF, or (b)gzipped VCF)
- BED, BEDPE
- STAR-fusion result file
Example SV inspector workflow
We can start the SV inspector workflow by opening up this file containing translocation events called from a breast cancer cell line SKBR3, based on these published data.
## Example VCF for use in the SV inspector
Copy this URL and paste it into the import form and select hg19:
SV inspector results
After loading the user's requested file, you will have a tabular view with each row representing a row of the file you opened, along with a whole-genome overview of the SVs on the right
Now here is where things can become interesting
We can search and filter the table, with filtering and searching being reflected in the circular view as well.
Launching breakpoint split view
By clicking on the features in the circular view, or clicking on the triangle drop-down on the leftmost column of the table, we can dynamically launch a new view of the data that is called the "split view" or the "breakpoint split view"
This allows us to inspect the breakpoints of the structural variant, and compare each side to the alignments.
Getting the protein sequence for features
If you have a track with gene or transcript level features, then the feature detail sidebar will automatically stitch together the sequence for that feature. Options include:
- CDS - the coding sequences, spliced together
- Protein - performs protein translation on the CDS, currently assuming the default codon translation table
- cDNA - the CDS plus UTR, or just all exons if a non-coding gene
- Gene w/ introns - the entire gene region sequence with the introns included
- Gene w/ 10bp of introns - the spliced gene sequence with 10bp around the splice sites shown
- Gene w/ 500 up+down stream - the entire gene region with 500bp upstream and downstream (shown in light red)
- Gene w/ 500 up+down stream + 10bp of introns - the spliced gene sequence with 10bp around the splice sites shown and the up/down stream shown
Some of the parameters such as 500bp and 10bp are arbitrarily chosen, if you are interested in adjusting these default parameters let us know.
Using the plugin store
Users can add plugins to their session using the in-app plugin store. The plugin will be added to your "session" which can be shared with the share button (or if you are an admin running the admin-server, then it will be added to the config file).
This can add extra functions, tracks, or many other interesting features. For example, if you add the CIVIC plugin, it will automatically add a track that contains the CIVIC cancer gene annotations to hg19.
Not all plugins are directly useful from being added, and require hand-editing of the configuration file to be useful. If you would like to use such a plugin and do not have access to the configuration file, contact your administrator.
Using the bookmark widget
The "bookmark widget" can store lists of interesting regions that you might like to easily revisit.
The bookmark stores a list of single regions (chromosome, start, and end coordinate), and clicking on the regions in the bookmark widget will launch a linear genome view at that region.
You can also import a list of regions from a BED file.
You can add "notes" for your list of regions by double clicking on the label field to easily "annotate" your datasets.
Finally, you can export your list of regions to a BED file or TSV.