BioinfometricsBioinfometrics logo mark — DNA double helix encoded as a financial candlestick chart on an upward trend axis. The dual-read mark simultaneously represents molecular biology and market data intelligence.

Bioinfometrics

How to Read a Volcano Plot and a PCA Plot (With Simulated Data)

The two plots in almost every omics paper, explained with a labelled simulation: what each axis means, what to look for, and the three mistakes that mislead readers.

Simulated volcano plot of 300 genes and a PCA plot of 18 samples in three groups
Martin DAVILABy Martin DAVILA3/2/20265

Two plots appear in almost every omics paper: the volcano plot and the principal component analysis (PCA) plot. They are easy to make and easy to misread.

This post explains how to read each one. The data in both figures are simulated by us with a fixed random seed. They are not measurements of any real experiment, and the gene names are placeholders.

What does a volcano plot show?

A volcano plot summarizes a differential expression experiment. Each point is a gene. The horizontal axis is how much the gene changed between two conditions, as the log2 of the fold change. The vertical axis is how statistically surprising the change is, as the negative log10 of the p-value. Higher means more surprising.

Simulated differential expression: 300 genes

Simulated data. Highlighted: p < 0.05 and absolute log2 fold change > 1.

In this simulation, 53 of 300 genes pass both thresholds: 22 up (purple) and 31 down (blue). The grey points are either too small a change, too uncertain, or both.

How to read it:

  • Far left or right means a large change in expression.
  • High up means the change is unlikely to be noise, given the variability in the data.
  • The upper corners are the interesting genes, because they are both large and reliable.
  • A point high up but near the middle is a small, precisely measured change. It may be real and still not matter biologically.

Where do volcano plots go wrong?

Three mistakes show up repeatedly.

Using raw p-values across thousands of genes. If you test 20,000 genes at p < 0.05, about 1,000 will pass by chance alone. Real analyses adjust for multiple testing, for example with the Benjamini–Hochberg false discovery rate. Our simulated threshold uses raw p-values for simplicity and would be too lenient on real data.

Choosing thresholds after seeing the plot. A fold-change cut-off of 1 (a doubling) is a convention, not a law. Pick the thresholds before looking, or state that you did not.

Reading significance as importance. With enough samples, tiny changes become statistically significant. The horizontal axis tells you whether a change is large enough to care about.

What does a PCA plot show?

PCA compresses thousands of measurements per sample into a few summary axes. The first two, PC1 and PC2, capture the largest patterns of variation across samples. Each point is a sample, not a gene.

Simulated sample clustering: 18 samples, 3 groups

Simulated data. C = control, T = treated, K = knockdown. Six samples per group.

Samples that sit close together have similar overall profiles. Here the three groups separate cleanly, which is what you hope for when the treatment changes biology more than the lab handling does.

How to read it:

  • Tight clusters by condition suggest the experiment worked and replicates agree.
  • A replicate sitting away from its group may be an outlier worth investigating.
  • Clusters that follow the date, the operator or the sequencing run instead of the condition are a sign of batch effects. That is the most useful problem a PCA plot can reveal before you run any statistics.

Real PCA plots label each axis with the percent of variance it explains. We left that out because our coordinates are simulated, not computed from a gene matrix.

Limits of this tutorial

Everything shown is simulated. The effect sizes, counts and clusters were generated to look like a typical experiment, so they illustrate how to read the plots and say nothing about any gene or disease. Real analyses need replicate counts, normalization, adjusted p-values and a pre-registered threshold. If you want to run a real one, the DESeq2 paper below is a good starting point.

Sources

  1. Love, Huber and Anders, Moderated estimation of fold change and dispersion for RNA-seq data with DESeq2, Genome Biology, 2014.
  2. Benjamini and Hochberg, Controlling the false discovery rate: a practical and powerful approach to multiple testing, Journal of the Royal Statistical Society B, 1995.
  3. Simulated data generated by the editors with a fixed random seed (7). The simulation draws 300 genes, about 14% with a true effect between 1 and 2.6 log2 units, and 18 samples in three groups.

Found this article helpful? Share it with your network!

Recommended Reading

Discussion (0)

Sign in to join the conversation and share your thoughts

No comments yet. Be the first to start the discussion!