Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Overview

The Integrative Genomics Viewer (IGV) from the Broad Center allows you to view several types of data files involved in any NGS analysis that employs a reference genome, including how reads from a dataset are mapped, gene annotations, and predicted genetic variants.

Learning Objectives

In this tutorial, we're going to learn how to do the following in IGV:

  • Create a custom genome database (usually used for microbial genomes) or load a pre-existing genome assembly (usually used for the genomes of model organisms and higher Eukaryotes).
  • Load output from mapping reads to a reference genome.
  • Load output from calling genetic variants.
  • Navigate the view of the genome and interpret the display of this data.

Theory

Because NGS datasets are very large, it is often impossible or inefficient to read them entirely into a computer's memory when searching for a specific piece of data. In order to more quickly retrieve the data we are interested in analyzing or viewing, most programs have a way of treating these data files as databases. Database indexes enable one to rapidly pull specific subsets of the data from them.

The Integrative Genomics Viewer is a program for reading several types of indexed database information, including mapped reads and variant calls, and displaying them on a reference genome. It is invaluable as a tool for viewing and interpreting the "raw data" of many NGS data analysis pipelines.

 


Workflow 1: Viewing E. coli data in IGV

Data files

You can start this tutorial two ways:

  1. If you have a mapping directory with output from the Mapping tutorial and the SNV calling tutorial, then you should use those files for part 1 of this tutorial. You can proceed with either one alone or with both.
  2. Expand
    titleIf you have not done the other tutorials and want a "canned" data set provided for you, click here for example files.
    Code Block
    $BI/gva_course/mapping/IGV  # location of example files
    cp -r /corral-repl/utexas/BioITeam/gva_course/mapping/IGV .  # example command to copy to current directory
    scp -r username@ls5.tacc.utexas.edu:/corral-repl/utexas/BioITeam/gva_course/mapping/IGV . # to copy to a local computer skipping the step of copying to a lonestar directory and secure copying from there.

    Then skip down to #Launching IGV.

Prepare a GFF feature file for the reference sequence

IGV likes its reference genome files in GFF (Gene Feature Format). Unfortunately, our old friend bp_seqconvert.pl doesn't do deal with GFF. So, we're going to show you another tool for sequence format conversion called Readseq. We've already installed it into the $BI/bin directory so you don't have to, but here we provide the steps that can be used to install it in a local directory.

...

Expand
titleWhy the funny invocation?
You are actually using the command java and telling it where to find a "jar" file of java code to run. The -jar and -cp options run it in different ways. It's pretty confusing.

...


To do the conversion that we want, use this command:

Code Block
cds
mkdir BDIBGVA_IGV_Tutorial
cd BDIBGVA_IGV_Tutorial
java -cp /corral-repl/utexas/BioITeam/bin/readseq.jar run $SCRATCH/BDIBGVA_bowtie2_mapping/NC_012967.1.gbk -f GFF -o NC_012967.1.gbk.gff

It's a bit hard to figure out because, unlike most conventions, it takes the unnamed arguments before the optional flag arguments, there is no example command, and you have to switch -jar to -cp. Search online for usage examples when you can't figure something out from the help. Take a look at the contents of the original Genbank file and the new GFF file and try to get a handle on what is going on in this conversion using commands like head and tail.

Copy files to your desktop

IGV is an interactive graphical viewer program. You can't run it on TACC, so we need to get the relevant files back to your desktop machine.

...

Code Block
languagebash
titleNote the need to add the suffix _fix to "samtools_tutorial" in final 4 copy steps if used the single file execution
mkdir BDIB_IGV_export
cp -i NC_012967.1.gbk.gff BDIBGVA_IGV_export  # copy the new file you just converted to the export directory
cp -i $SCRATCH/BDIBGVA_bowtie2_mapping/NC_012967.1.fasta BDIBGVA_IGV_export
cp -i $SCRATCH/BDIBGVA_samtools_tutorial/NC_012967.1.fasta.fai BDIBGVA_IGV_export
cp -i $SCRATCH/BDIBGVA_samtools_tutorial/SRR030257.vcf BDIBGVA_IGV_export
cp -i $SCRATCH/BDIBGVA_samtools_tutorial/SRR030257.sorted.bam BDIBGVA_IGV_export/bowtie2.sorted.bam
cp -i $SCRATCH/BDIBGVA_samtools_tutorial/SRR030257.sorted.bam.bai BDIBGVA_IGV_export/bowtie2.sorted.bam.bai
tar -czvf BDIBGVA_IGV_export.tar.gz BDIBGVA_IGV_export

Now, copy the entire compressed IGV directory back to your local Desktop machine.

Expand
titleAnother refresher on how to copy files back from lonestar

In the terminal connected to Lonestar, figure out the complete path to the IGV directory.

Code Block
pwd

Open a new terminal window on your Desktop. Fill in the parts in brackets <> in this command:

Code Block
scp -r <username>@ls5.tacc.utexas.edu:<full_path_to_IGV>/BDIBGVA_IGV_export.tar.gz .
# enter your password 
tar -xvzf BDIBGVA_IGV_export.tar.gz

Anchor
Launching IGV
Launching IGV

Launching IGV

Warning

For the remainder of the tutorial, work on your local machine. NOT TACC!

...

  1. wget http://www.broadinstitute.org/igv/projects/downloads/IGV_2.3.32.zip unzip IGV_2.3.32.zip cd IGV_2.3.32 java -Xmx2g -jar igv.jar

    desktop, then extract the zip file and launch the application.

    Expand
    titleLocally on the classroom machines booted in Mac OSX

    Click here to download and install the mac application version. Save it to your desktop, then extract the zip file and launch the application.

    Expand
    titleLocally on the classroom machines booted in Linux

    This downloads the IGV executable and tells the command line to launch it (via the java command).

    Code Block
  2. Expand
    titleIn a Web browser

    Navigate a web browser to this page:http://www.broadinstitute.org/software/igv/download. You will need to register your email address to use this option, but in years of registration I have never noticed any emails from them. Go ahead and click on the "Launch with 2 GB" option. This will download a "Java Web Start" file that you can launch by locating it on your Desktop and double-clicking.

    Warning
    titleMac warning

    This will not work on recent Mac OS updates without severely modifying security permissions as administrator (which you can not do on a classroom computer). Recommended to use Mac directions above during the classis a bit much to do for this class if you dont continue to use it).

  3. Expand
    titleLocally on a Mac or Windows computer

    Click here to download version 2.35.53 2 of IGV or visit https://www.broadinstitute.org/software/igv/download to download the latest binary version. After unzipping, you should be able to click on igv.bat for Windows or igv.command on MacOSX to lauch IGV. If this is not working, you might need to try the web start.

    Warning
    titleMac warning

    This will not work on recent Mac OS updates without severely modifying security permissions as administrator. Recommended to use Mac directions above.

...


Load genome into IGV

From the main window of IGV, click on Genomes > Create .genome File... and you should be presented with the following window.

Enter the ID and Name of the Genome you are working with (these can be anything that makes sense to you) and select the path to your *.fasta file (the index, *.fai file needs to be in the same directory), then select the path to your *.gff file for the Gene File. Click OK and then save this *.genome file inside the same folder as your data.

Load mapped reads into IGV

From the main window of IGV, click on File > Load from File.... Choose bowtie2.sorted.bam

After importing your reference genome and loading an alignment file, click on the + button in the upper right until reads appear! Then, your screen should look similar to the following:

Load variant calls into IGV

We're really interested in places in the genome where we think there are mutations. In the Variant calling tutorial we identified such locations but lacked a good way to visualize them. This is your opportunity to visualize them. We have already transferred the SRR030257.vcf file back to your local computer, but before we can visualize them, we need to (guess what?) index it.

...

You are now free to investigate different areas and their alignments in the genome.

Navigating in IGV

There are a lot of things you can do in IGV. Here are a few:

...

See the IGV Manual for more tips and how to load other kinds of data.

Exercises

  • Why are some reads different colors? Hint: Try changing the display options to show read pairs and editing some of the distance constraints.
  • What is a typical mapping quality (MQ) for a read? Convert this to the probability that it is mismapped.

    Expand
    titleRemember the formula for a Phred quality score?

    The estimated probability that a read is mapped incorrectly is 10^(-MQ/10).

  • Can you find a variant where the sequenced sample differs from the reference? This would be like looking for a needle in a haystack if not for the use of variant callers and the control-f and control-b options to zoom right to areas where there are discrepancies between reads and the reference genome that might indicate there were mutations in the sequenced E. coli.

    Expand
    titleSome interesting example coordinates
    • Expand
      titleCoordinate 161,041. What gene is this in and what is the effect on the protein sequence?

      Gene is pcnB, mutation is a snp

    • Expand
      titleCoordinate 3,248,957. What gene is this in and what is the effect on the protein sequence?

      Gene is infB, mutation is a snp

    • Expand
      titleCoordinate 3,894,997. What type of mutation is this?

      Deletion of the rbsD gene

    • Expand
      titleCheck out the rbsA gene region? What's going on here?

      There was a large deletion. Can you figure out the exact coordinates of the endpoints?

    • Navigate to coordinate 3,289,962. Compare the results for different alignment programs and settings. Can you explain what's going on here?

      Expand
      Answer
      Answer

      There is a 16 base deletion in the gltB gene reading frame.

    • What is going on in the pykF gene region? You might see red read pairs. What does that mean? Can you guess what type of mutation occurred here?

      Expand
      Answer
      Answer

      The read pairs are discordantly mapped. There was an insertion of a new copy of a mobile genetic element (an IS150 element) that exists at other locations in the reference sequence.

    • See if you can find more interesting locations. There are ~40 mutations total in this sample MOST of which are false positives.

Workflow 2: Viewing Human Genome Data in IGV

Now that you've familiarized yourself with IGV using a "simple" bacteria, let's look at something a "little" more complex: the human genome.

Advanced exercise: human data scavenger hunt 

Data from the 1000 Genomes Project can be found directly from the Broad's server for IGV. There are now MANY genomes available this way.

Find one or more dbSNP accession numbers for SNPs apparent in one of the two 1000 genomes project trios in the GABBR1 gene.

Steps:

  1. Download and install the Integrative Genome Viewer from the Broad Institute. 
  2. Select "Human hg19" as the reference genome from the top left drop down (you may need to select "more" to have hg19 as an option)
  3. Get some data: File > Load from Server… > 1000 genomes > Alignments > ACB > exome > HG01880
  4. Navigate to the rightmost exons of the GABBR1 gene.
  5. Zoom in until you find some SNPs. (Hint look just to the left of the 2nd exon).
  6. What type of library is this? (Hint: zoom out)
  7. If you knew this was a cancer patient, consider how strongly you would think this may be a potentially causative mutation.
  8. Imagine it was actually in the exon rather than just into the intron... would that make you consider it more?
  9. Load and look at the SNP track: File > Load from server > Annotations > Variants and Repeats > dbSNP 1.4.7
  10. The track may load with the Refseq genes, making it useful to resize that window to view both the gene and the dbSNP information simultaneously.
  11. Consider if this makes you think it more likely or less likely that this is a causative mutation.

Optional Tutorial Exercises ...

 


Expand
titleTo visualize mapped data without calling variants

You will need to index your reference FASTA and convert your SAM output files into sorted and indexed BAM files. The "why?" behind these steps is described more fully in the Variant calling tutorial. If you are in your mapping directory, these commands will perform the necessary steps.

Warning
titleSubmit to the TACC queue or run in an idev shell
Code Block
samtools faidx NC_012967.1.fasta
samtools view -b -S -o bowtie/SRR030257.bam bowtie/SRR030257.sam
samtools sort bowtie/SRR030257.bam -o bowtie/SRR030257.sorted
samtools index bowtie/SRR030257.sorted.bam

Repeat the last three commands for each SAM output file that you want to visualize in IGV.

...

Return to GVA2017 GVA2019 Home page