Skip to contents

The main output is obviously, the volcano plot itself, which is returned as a ggplot object from the volcano_plot_maxquant() function. This can be customised further using ggplot2 functions, but there are other outputs that can be generated from the MaxQuant data.

Text output

To generate a text output of the enriched proteins, you can set the text_output parameter to TRUE in the volcano_plot_maxquant() function. This will generate a text file containing the enriched proteins and their associated statistics. The output is saved as a tab-separated text file in the text_output_dir directory (default is “Output/Data/”).

It contains a ranked list of proteins where the ranking is calculated by the manhattan distance from the origin (0,0) in the volcano plot. This list can be useful for other applications or for generating a table for publication.

Alternative processing and statistical tests

Changing the processing of MaxQuant data

By default, process_maxquant() will analysis LFQ intensity values. To use a different measurement, the meas parameter can be set to one of the other measurements in the MaxQuant output (e.g. “iBAQ”, “Intensity”, “MS/MS.counts”).

The baseval parameter can be set to a value other than 0 to use a different base value for log2 transformation. The width and downshift parameters can be set to different values to change the imputation of missing values. The seed parameter can be set to a different value to change the random seed used for imputation.

Statistical tests

The standard method for calculating p-values is via an unpaired two sample t-test assuming equal variance. To change to paired t-test, you can set the paired parameter to TRUE in the process_maxquant() function, similarly the var.equal parameter can be set to FALSE to use Welch’s t-test instead of Student’s t-test. The default settings mirror Perseus processing.

Other plots

Mean vs Mean plot

The function mean_plot_maxquant() can be used to generate a mean vs mean plot of the two groups being compared. This is useful for visualising the distribution of the data.

The plot is generated with similar parameters to the volcano plot. Some examples are shown below:

library(VolcanoPlotR)
# get the path to the proteinGroups.txt file included in the package
filepath <- system.file("extdata", "proteinGroups.txt", package = "VolcanoPlotR")
# get the filename from the path
filename <- basename(filepath)
# get the directory name
filedir <- dirname(filepath)
df <- load_maxquant(file = filename, datadir = filedir)
df <- process_maxquant(df, group1 = "WT", group2 = "Control")
#> Using specified groups: WT versus Control
# now we can generate the mean vs mean plot
mean_plot_maxquant(df)

# we can add a line to show the diagonal and start to label points
mean_plot_maxquant(df, xy_line = TRUE, label_points = "top_20")

# the parameters are the same as for the volcano plot, so we can change the colours and labels
mean_plot_maxquant(df, label_points = "5_10",
                   x_label = "Control (LFQ Log2)",
                   y_label = "Important group (LFQ Log2)",
                   vp_colours = c("0" = "#a0a000", "1" = "#808080",
                                  "2" = "#606060", "3" = "#00dd80",
                                  "4" = "#606060", "5" = "#800080"))

PCA plot

This can be generated using the pca_plot_maxquant() function. The PCA plot by default shows a comparison between runs (experimental repeats), rather than between proteins.

# pca of the experimental repeats
pca_plot_maxquant(df)

Using the by_protein parameter, the PCA can be generated for the proteins instead of the experimental repeats. In this case, the points are coloured by significance based on the p-value and fold change thresholds. The settings for this plot can be adjusted in similar ways as for the volcano plot and the mean vs mean plot.

# pca of the proteins, coloured by significance
pca_plot_maxquant(df, by_protein = TRUE)