Basic R-Usage Guide for PTXQC

This vignette serves as a quickstart guide for R users to create a report from within R using PTXQC.

Target Audience: R users

Reports can be generated using the default configuration of PTXQC. See

vignette("PTXQC-InputData", package = "PTXQC")

how a txt folder should look like.

Generate a default report

This is the most simple invokation of PTXQC::createReport().

require(PTXQC)
## Loading required package: PTXQC
## Loading package PTXQC (version 0.92.0)
## the next require() is needed to prevent a spurious error in certain R versions (might be a bug in R or a package)
## error message is:
##    Error in Scales$new : could not find function "loadMethod"
require(methods)

## specify a path to a MaxQuant txt folder
## Note: This folder needs to be complete (see 'vignette("PTXQC-InputData", package = "PTXQC")')
if (1) {
  ## we will use an example dataset from PRIDE (dataset 2 of the PTXQC publication)
  local_zip = tempfile(fileext=".zip")
  tryCatch({
    download.file("ftp://ftp.pride.ebi.ac.uk/pride/data/archive/2015/11/PXD003133/txt_20min.zip", destfile = local_zip)
  }, error = function(err) {
    ## on Windows, one can get a 'cannot open URL' using the default method. So we try another
    download.file("ftp://ftp.pride.ebi.ac.uk/pride/data/archive/2015/11/PXD003133/txt_20min.zip", destfile = local_zip, method= "internal")
  })
  unzip(local_zip, exdir = tempdir()) ## extracts content
  txt_folder = file.path(tempdir(), "txt_20min")
} else {
  ## if you have local MaxQuant output, just use it
  txt_folder = "c:/Proteomics/MouseLiver/combined/txt"
}
## Warning in download.file("ftp://ftp.pride.ebi.ac.uk/pride/data/archive/2015/11/PXD003133/txt_20min.zip", : InternetOpenUrl failed: 'The login request was denied
## '
r = createReport(txt_folder)
## getYAML with: PTXQC$ReportFilename$extended  default: TRUE 
##  .. return default: TRUE 
## getYAML with: PTXQC$UseLocalMQPar  default: TRUE 
##  .. return default: TRUE 
## getYAML with: File$Parameters$enabled  default: TRUE 
##  .. return default: TRUE 
## getYAML with: PTXQC$NameLengthMax_num  default: 10 
##  .. return default: 10 
## getYAML with: File$Summary$enabled  default: TRUE 
##  .. return default: TRUE 
## getYAML with: File$Summary$IDRate$Thresh_bad_num  default: 20 
##  .. return default: 20 
## getYAML with: File$Summary$IDRate$Thresh_great_num  default: 35 
##  .. return default: 35 
## getYAML with: File$ProteinGroups$enabled  default: TRUE 
##  .. return default: TRUE 
## getYAML with: File$ProteinGroups$RatioPlot$LabelIncThresh_num  default: 4 
##  .. return default: 4 
## getYAML with: File$ProteinGroups$IntensityThreshLog2_num  default: 25 
##  .. return default: 25 
## getYAML with: File$Evidence$enabled  default: TRUE 
##  .. return default: TRUE 
## getYAML with: File$Evidence$ProteinCountThresh_num  default: 3500 
##  .. return default: 3500 
## getYAML with: File$Evidence$IntensityThreshLog2_num  default: 23 
##  .. return default: 23 
## getYAML with: File$Evidence$PeptideCountThresh_num  default: 15000 
##  .. return default: 15000 
## getYAML with: File$Evidence$SpecialContaminants  default: c("MYCOPLASMA", "1") 
##  .. return default: c("MYCOPLASMA", "1") 
## getYAML with: File$Evidence$MQpar_MatchingTimeWindow_num  default: 1 
##  .. return default: 1 
## getYAML with: File$Evidence$MatchBetweenRuns_wA  default: auto 
##  .. return default: auto 
## getYAML with: File$Evidence$MQpar_firstSearchTol_num  default: 20 
##  .. return default: 20 
## getYAML with: File$Evidence$firstSearch_outOfCalWarnSD_num  default: 2 
##  .. return default: 2 
## getYAML with: File$Evidence$MQpar_mainSearchTol_num  default: NA 
##  .. return default: NA 
## getYAML with: File$MsMs$enabled  default: TRUE 
##  .. return default: TRUE 
## getYAML with: File$MsMsScans$enabled  default: TRUE 
##  .. return default: TRUE 
## getYAML with: File$MsMsScans$IonInjectionThresh_num  default: 10 
##  .. return default: 10 
## getYAML with: PTXQC$OutputFormats  default: html 
##  getYAML with: PTXQC$OutputFormats  default: plainPDF 
##  .. return default: html 
##   .. return default: plainPDF 
## getYAML with: PTXQC$PlainPDF$AddPageNumbers  default: on 
##  .. return default: on 
## meta id:  qcMetric_PAR 
## getYAML with: order$qcMetric_PAR  default: 1 
##  .. return default: 1 
## meta id:  qcMetric_PG_PCA 
## getYAML with: order$qcMetric_PG_PCA  default: 3 
##  .. return default: 3 
## meta id:  qcMetric_EVD_Top5Cont 
## getYAML with: order$qcMetric_EVD_Top5Cont  default: 10 
##  .. return default: 10 
## meta id:  qcMetric_PG_Ratio 
## getYAML with: order$qcMetric_PG_Ratio  default: 19 
##  .. return default: 19 
## meta id:  qcMetric_EVD_UserContaminant 
## getYAML with: order$qcMetric_EVD_UserContaminant  default: 20 
##  .. return default: 20 
## meta id:  qcMetric_EVD_PeptideInt 
## getYAML with: order$qcMetric_EVD_PeptideInt  default: 30 
##  .. return default: 30 
## meta id:  qcMetric_PG_RawInt 
## getYAML with: order$qcMetric_PG_RawInt  default: 32 
##  .. return default: 32 
## meta id:  qcMetric_PG_LFQInt 
## getYAML with: order$qcMetric_PG_LFQInt  default: 33 
##  .. return default: 33 
## meta id:  qcMetric_PG_ITRAQInt 
## getYAML with: order$qcMetric_PG_ITRAQInt  default: 34 
##  .. return default: 34 
## meta id:  qcMetric_MSMS_MissedCleavages 
## getYAML with: order$qcMetric_MSMS_MissedCleavages  default: 40 
##  .. return default: 40 
## meta id:  qcMetric_EVD_Charge 
## getYAML with: order$qcMetric_EVD_Charge  default: 100 
##  .. return default: 100 
## meta id:  qcMetric_PG_Cont 
## getYAML with: order$qcMetric_PG_Cont  default: 110 
##  .. return default: 110 
## meta id:  qcMetric_MSMSScans_TopNoverRT 
## getYAML with: order$qcMetric_MSMSScans_TopNoverRT  default: 120 
##  .. return default: 120 
## meta id:  qcMetric_EVD_IDoverRT 
## getYAML with: order$qcMetric_EVD_IDoverRT  default: 150 
##  .. return default: 150 
## meta id:  qcMetric_EVD_RTPeakWidth 
## getYAML with: order$qcMetric_EVD_RTPeakWidth  default: 170 
##  .. return default: 170 
## meta id:  qcMetric_EVD_MBRAlign 
## getYAML with: order$qcMetric_EVD_MBRAlign  default: 210 
##  .. return default: 210 
## meta id:  qcMetric_EVD_MBRIdTransfer 
## getYAML with: order$qcMetric_EVD_MBRIdTransfer  default: 220 
##  .. return default: 220 
## meta id:  qcMetric_EVD_MBRaux 
## getYAML with: order$qcMetric_EVD_MBRaux  default: 221 
##  .. return default: 221 
## meta id:  qcMetric_MSMSScans_IonInjTime 
## getYAML with: order$qcMetric_MSMSScans_IonInjTime  default: 240 
##  .. return default: 240 
## meta id:  qcMetric_MSMSScans_MSMSIntensity 
## getYAML with: order$qcMetric_MSMSScans_MSMSIntensity  default: 245 
##  .. return default: 245 
## meta id:  qcMetric_EVD_MS2OverSampling 
## getYAML with: order$qcMetric_EVD_MS2OverSampling  default: 250 
##  .. return default: 250 
## meta id:  qcMetric_EVD_PreCal 
## getYAML with: order$qcMetric_EVD_PreCal  default: 260 
##  .. return default: 260 
## meta id:  qcMetric_EVD_PostCal 
## getYAML with: order$qcMetric_EVD_PostCal  default: 270 
##  .. return default: 270 
## meta id:  qcMetric_MSMS_MSMSDecal 
## getYAML with: order$qcMetric_MSMS_MSMSDecal  default: 280 
##  .. return default: 280 
## meta id:  qcMetric_SM_MSMSIdRate 
## getYAML with: order$qcMetric_SM_MSMSIdRate  default: 300 
##  .. return default: 300 
## meta id:  qcMetric_MSMSScans_TopN 
## getYAML with: order$qcMetric_MSMSScans_TopN  default: 350 
##  .. return val: 120 
## meta id:  qcMetric_MSMSScans_TopNID 
## getYAML with: order$qcMetric_MSMSScans_TopNID  default: 380 
##  .. return default: 380 
## meta id:  qcMetric_MSMSScans_DepPep 
## getYAML with: order$qcMetric_MSMSScans_DepPep  default: 383 
##  .. return default: 383 
## meta id:  qcMetric_EVD_MissingValues 
## getYAML with: order$qcMetric_EVD_MissingValues  default: 390 
##  .. return default: 390 
## meta id:  qcMetric_EVD_PeptideCount 
## getYAML with: order$qcMetric_EVD_PeptideCount  default: 400 
##  .. return default: 400 
## meta id:  qcMetric_EVD_ProteinCount 
## getYAML with: order$qcMetric_EVD_ProteinCount  default: 450 
##  .. return default: 450 
## meta id:  qcMetric_AverageQualOverall 
## getYAML with: order$qcMetric_AverageQualOverall  default: 9999 
##  .. return default: 9999 
## Reading file C:\Users\bielow\AppData\Local\Temp\RtmpSmzD8i/txt_20min/parameters.txt ...
## Read 61 entries from C:\Users\bielow\AppData\Local\Temp\RtmpSmzD8i/txt_20min/parameters.txt.
## Updating colnames
## Simplifying contaminants
## Simplifying reverse
## Starting to work on PAR: MQ Parameters ...
## 
## Memory [MB] prior|after|max(diff) : 42.2 | 43.6 | 70.6 (28)
## 
## Duration: 0 s
## 
## ... PAR: MQ Parameters  done
## Reading file C:\Users\bielow\AppData\Local\Temp\RtmpSmzD8i/txt_20min/summary.txt ...
## Read 9 entries from C:\Users\bielow\AppData\Local\Temp\RtmpSmzD8i/txt_20min/summary.txt.
## Updating colnames
## Simplifying contaminants
## Simplifying reverse
## Adding fc.raw.file column ... done
## Starting to work on SM: MS^2 ID rate (">%1.0f") ...
## 
## Memory [MB] prior|after|max(diff) : 43.7 | 45 | 50.1 (6)
## 
## Duration: 0 s
## 
## ... SM: MS^2 ID rate (">%1.0f")  done
## Reading file C:\Users\bielow\AppData\Local\Temp\RtmpSmzD8i/txt_20min/proteinGroups.txt ...
## Read 4134 entries from C:\Users\bielow\AppData\Local\Temp\RtmpSmzD8i/txt_20min/proteinGroups.txt.
## Updating colnames
## Simplifying contaminants
## Simplifying reverse
## Starting to work on PG: Contaminants ...
## 
## Memory [MB] prior|after|max(diff) : 52.1 | 52.6 | 57.8 (6)
## 
## Duration: 0 s
## 
## ... PG: Contaminants  done
## Starting to work on PG: raw intensity ...
## 
## Memory [MB] prior|after|max(diff) : 52.6 | 54.9 | 70.1 (17)
## 
## Duration: 0 s
## 
## ... PG: raw intensity  done
## Starting to work on PG: LFQ intensity ...
## 
## Memory [MB] prior|after|max(diff) : 54.9 | 55.6 | 70.1 (15)
## 
## Duration: 0 s
## 
## ... PG: LFQ intensity  done
## Starting to work on PG: Principal Component ...
## 
## Memory [MB] prior|after|max(diff) : 55.6 | 56.9 | 96.2 (41)
## 
## Duration: 0 s
## 
## ... PG: Principal Component  done
## Reading file C:\Users\bielow\AppData\Local\Temp\RtmpSmzD8i/txt_20min/evidence.txt ...
## Requiring column(s) 'retention.length' to be of type 'numeric'!
## Requiring column(s) 'retention.time.calibration' to be of type 'numeric'!
## Requiring column(s) 'retention.time', 'calibrated.retention.time' to be of type 'numeric'!
## Requiring column(s) 'match.time.difference' to be of type 'numeric'!
## Requiring column(s) 'intensity' to be of type 'numeric'!
## Requiring column(s) 'mass.error..ppm.', 'mass.error..da.', 'uncalibrated.mass.error..ppm.', 'uncalibrated.mass.error..da.' to be of type 'numeric'!
## Requiring column(s) 'uncalibrated...calibrated.m.z..ppm.', 'uncalibrated...calibrated.m.z..da.' to be of type 'numeric'!
## Requiring column(s) 'm.z' to be of type 'numeric'!
## Requiring column(s) 'score' to be of type 'numeric'!
## WARNING: Could not find column regex '^fraction$' using case-INsensitive matching.
## WARNING: Could not find column regex '[RK]\.Count' using case-INsensitive matching.
## Requiring column(s) 'charge' to be of type 'numeric'!
## Requiring column(s) 'mass' to be of type 'numeric'!
## Requiring column(s) 'ms.ms.count' to be of type 'numeric'!
## Keeping 17 of 62 columns!
## Read 90398 entries from C:\Users\bielow\AppData\Local\Temp\RtmpSmzD8i/txt_20min/evidence.txt.
## Updating colnames
## Simplifying contaminants
## Simplifying reverse
## Adding fc.raw.file column ... done
## Starting to work on EVD:Contaminant (%s) ...
## 
## Memory [MB] prior|after|max(diff) : 77.7 | 78.7 | 136 (58)
## 
## Duration: 0 s
## 
## ... EVD:Contaminant (%s)  done
## Starting to work on EVD: Pep Intensity (">%1.1f") ...
## 
## Memory [MB] prior|after|max(diff) : 78.7 | 88.6 | 140.9 (62)
## 
## Duration: 0 s
## 
## ... EVD: Pep Intensity (">%1.1f")  done
## Starting to work on EVD: Prot Count (">%1.0f") ...
## 
## Memory [MB] prior|after|max(diff) : 89 | 89.1 | 149.8 (61)
## 
## Duration: 0 s
## 
## ... EVD: Prot Count (">%1.0f")  done
## Starting to work on EVD: Pep Count (">%1.0f") ...
## 
## Memory [MB] prior|after|max(diff) : 89.1 | 89.2 | 112.5 (23)
## 
## Duration: 0 s
## 
## ... EVD: Pep Count (">%1.0f")  done
## Starting to work on EVD: RT Peak Width ...
## 
## Memory [MB] prior|after|max(diff) : 89.2 | 89.5 | 179.6 (90)
## 
## Duration: 0 s
## 
## ... EVD: RT Peak Width  done
## Starting to work on EVD: MBR Align ...
## 
## Memory [MB] prior|after|max(diff) : 89.5 | 90.9 | 179.5 (90)
## 
## Duration: 5 s
## 
## ... EVD: MBR Align  done
## Starting to work on EVD: MBR ID-Transfer ...
## 
## Memory [MB] prior|after|max(diff) : 90.8 | 91.2 | 292.3 (202)
## 
## Duration: 42 s
## 
## ... EVD: MBR ID-Transfer  done
## Starting to work on EVD: MBR auxilliary ...
## 
## Memory [MB] prior|after|max(diff) : 91.2 | 96.7 | 258.1 (167)
## 
## Duration: 1 s
## 
## ... EVD: MBR auxilliary  done
## Starting to work on EVD: Charge ...
## Warning: Ignoring unknown aesthetics: width
## 
## Memory [MB] prior|after|max(diff) : 96.7 | 96.8 | 129.7 (33)
## 
## Duration: 0 s
## 
## ... EVD: Charge  done
## Starting to work on EVD: ID rate over RT ...
## 
## Memory [MB] prior|after|max(diff) : 96.8 | 97.1 | 157.5 (61)
## 
## Duration: 0 s
## 
## ... EVD: ID rate over RT  done
## Starting to work on EVD: MS Cal-Pre (%1.1f) ...
## 
## Memory [MB] prior|after|max(diff) : 97.1 | 100.4 | 182.1 (85)
## 
## Duration: 0 s
## 
## ... EVD: MS Cal-Pre (%1.1f)  done
## Starting to work on EVD: MS Cal-Post ...
## 
## Memory [MB] prior|after|max(diff) : 100.4 | 103.7 | 181.7 (81)
## 
## Duration: 0 s
## 
## ... EVD: MS Cal-Post  done
## Starting to work on EVD: Contaminants ...
## 
## Memory [MB] prior|after|max(diff) : 103.7 | 106.7 | 174.3 (71)
## 
## Duration: 0 s
## 
## ... EVD: Contaminants  done
## Starting to work on EVD: MS^2 Oversampling ...
## 
## Memory [MB] prior|after|max(diff) : 106.7 | 106.8 | 155 (48)
## 
## Duration: 0 s
## 
## ... EVD: MS^2 Oversampling  done
## Starting to work on EVD: Pep Missing Values ...
## 
## Memory [MB] prior|after|max(diff) : 106.8 | 114.4 | 294.9 (188)
## 
## Duration: 1 s
## 
## ... EVD: Pep Missing Values  done
## Reading file C:\Users\bielow\AppData\Local\Temp\RtmpSmzD8i/txt_20min/msms.txt ...
## Requiring column(s) 'missed.cleavages' to be of type 'numeric'!
## Requiring column(s) 'evidence.id' to be of type 'numeric'!
## Keeping 2 of 60 columns!
## Read 86086 entries from C:\Users\bielow\AppData\Local\Temp\RtmpSmzD8i/txt_20min/msms.txt.
## Updating colnames
## Simplifying contaminants
## Simplifying reverse
## Adding fc.raw.file column ... done
## Starting to work on MSMS: MS^2 Cal (%s) ...
## 
## Memory [MB] prior|after|max(diff) : 210.9 | 214.5 | 290.5 (80)
## 
## Duration: 0 s
## 
## ... MSMS: MS^2 Cal (%s)  done
## Starting to work on MSMS: %s ...
## 
## Memory [MB] prior|after|max(diff) : 214.5 | 214.7 | 248.1 (34)
## 
## Duration: 0 s
## 
## ... MSMS: %s  done
## Reading file C:\Users\bielow\AppData\Local\Temp\RtmpSmzD8i/txt_20min/msmsScans.txt ...
## Requiring column(s) 'ion.injection.time' to be of type 'numeric'!
## Requiring column(s) 'retention.time' to be of type 'numeric'!
## WARNING: Could not find column regex '^dp.aa$' using case-INsensitive matching.
## WARNING: Could not find column regex '^dp.modification$' using case-INsensitive matching.
## Keeping 2 of 41 columns!
## Read 201567 entries from C:\Users\bielow\AppData\Local\Temp\RtmpSmzD8i/txt_20min/msmsScans.txt.
## Updating colnames
## Simplifying contaminants
## Simplifying reverse
## Adding fc.raw.file column ... done
## Starting to work on MS^2*Scans: TopN over RT ...
## 
## Memory [MB] prior|after|max(diff) : 130.4 | 132.2 | 263.9 (134)
## 
## Duration: 1 s
## 
## ... MS^2*Scans: TopN over RT  done
## Starting to work on MS^2*Scans: Ion Inj Time ...
## 
## Memory [MB] prior|after|max(diff) : 132.1 | 132.6 | 148.5 (16)
## 
## Duration: 0 s
## 
## ... MS^2*Scans: Ion Inj Time  done
## Starting to work on MS^2*Scans: Intensity ...
## Warning: Ignoring unknown aesthetics: width
## 
## Memory [MB] prior|after|max(diff) : 132.3 | 139.9 | 219.9 (88)
## 
## Duration: 0 s
## 
## ... MS^2*Scans: Intensity  done
## Starting to work on MS^2*Scans: TopN high ...
## 
## Memory [MB] prior|after|max(diff) : 139.7 | 139.9 | 156 (16)
## 
## Duration: 0 s
## 
## ... MS^2*Scans: TopN high  done
## Starting to work on MS^2*Scans: TopN ID over N ...
## 
## Memory [MB] prior|after|max(diff) : 139.8 | 139.9 | 161.6 (22)
## 
## Duration: 0 s
## 
## ... MS^2*Scans: TopN ID over N  done
## [1] "#Metrics: "
## [1] 32
## Starting to work on Average Overall Quality ...
## 
## Memory [MB] prior|after|max(diff) : 139.8 | 139.8 | 140.9 (1)
## 
## Duration: 0 s
## 
## ... Average Overall Quality  done
## Warning in FUN(subset, ...): NAs introduced by coercion
## Creating Report file ...
## processing file: PTXQC_report_template.Rmd
## Warning: Removed 1342 rows containing non-finite values (stat_boxplot).
## Warning: position_dodge requires non-overlapping x intervals
## Warning: Removed 85 rows containing non-finite values (stat_boxplot).
## Warning: position_dodge requires non-overlapping x intervals
## Warning: Removed 125 rows containing non-finite values (stat_boxplot).
## Warning: position_dodge requires non-overlapping x intervals
## Warning: Removed 5 rows containing missing values (geom_point).
## Warning: Removed 719 rows containing non-finite values (stat_boxplot).
## Warning: Removed 779 rows containing non-finite values (stat_boxplot).
## Warning: Removed 720 rows containing non-finite values (stat_bin).
## Warning: Removed 719 rows containing non-finite values (stat_bin).
## output file: PTXQC_report_template.knit.md
## "C:/Program Files/RStudio/bin/pandoc/pandoc" +RTS -K512m -RTS PTXQC_report_template.utf8.md --to html --from markdown+autolink_bare_uris+ascii_identifiers+tex_math_single_backslash --output pandoc8d0ea23f1f.html --smart --email-obfuscation none --self-contained --standalone --section-divs --table-of-contents --toc-depth 3 --template "C:\Users\bielow\Documents\R\win-library\3.3\rmarkdown\rmd\h\default.html" --no-highlight --variable highlightjs=1 --number-sections --variable "theme:bootstrap" --include-in-header "C:\Users\bielow\AppData\Local\Temp\RtmpSmzD8i\rmarkdown-str8d040117540.html"
## 
## Output created: C:\Users\bielow\AppData\Local\Temp\RtmpSmzD8i/txt_20min/report_v0.92.0_txt_20min.html
## [[1]]
## Warning: Removed 4 rows containing missing values (geom_text).
## Warning: Removed 1342 rows containing non-finite values (stat_boxplot).
## Warning: position_dodge requires non-overlapping x intervals
## Warning in grid.Call(L_stringMetric, as.graphicsAnnot(x$label)): font
## metrics unknown for character 0xa

## Warning in grid.Call(L_stringMetric, as.graphicsAnnot(x$label)): font
## metrics unknown for character 0xa
## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa
## Warning in grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x
## $y, : font metrics unknown for character 0xa

## Warning in grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x
## $y, : font metrics unknown for character 0xa

## Warning in grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x
## $y, : font metrics unknown for character 0xa

## Warning in grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x
## $y, : font metrics unknown for character 0xa
## Warning: Removed 85 rows containing non-finite values (stat_boxplot).
## Warning: position_dodge requires non-overlapping x intervals
## Warning in grid.Call(L_stringMetric, as.graphicsAnnot(x$label)): font
## metrics unknown for character 0xa

## Warning in grid.Call(L_stringMetric, as.graphicsAnnot(x$label)): font
## metrics unknown for character 0xa
## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa
## Warning in grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x
## $y, : font metrics unknown for character 0xa

## Warning in grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x
## $y, : font metrics unknown for character 0xa

## Warning in grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x
## $y, : font metrics unknown for character 0xa

## Warning in grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x
## $y, : font metrics unknown for character 0xa
## Warning: Removed 125 rows containing non-finite values (stat_boxplot).
## Warning: position_dodge requires non-overlapping x intervals
## Warning in grid.Call(L_stringMetric, as.graphicsAnnot(x$label)): font
## metrics unknown for character 0xa

## Warning in grid.Call(L_stringMetric, as.graphicsAnnot(x$label)): font
## metrics unknown for character 0xa
## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa

## Warning in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
## font metrics unknown for character 0xa
## Warning in grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x
## $y, : font metrics unknown for character 0xa

## Warning in grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x
## $y, : font metrics unknown for character 0xa

## Warning in grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x
## $y, : font metrics unknown for character 0xa

## Warning in grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x
## $y, : font metrics unknown for character 0xa
## Warning: Removed 5 rows containing missing values (geom_point).
## Warning: Removed 719 rows containing non-finite values (stat_boxplot).
## Warning: Removed 779 rows containing non-finite values (stat_boxplot).
## Warning: Removed 720 rows containing non-finite values (stat_bin).
## Warning: Removed 719 rows containing non-finite values (stat_bin).
##  done
## Report file created at
## 
##     C:\Users\bielow\AppData\Local\Temp\RtmpSmzD8i/txt_20min/report_v0.92.0_txt_20min.*
## 
## 
## 
## Time elapsed: 1.6 min
cat(paste0("\nReport generated as '", r$report_file, "'\n\n"))
## 
## Report generated as ''

Generate a customized report

The report can be customized via a YAML configuration file. For details, see

vignette("PTXQC-CustomizeReport", package = "PTXQC")

After editing the YAML configuration to your needs, run the code below.

require(PTXQC)
require(yaml)

## the next require() is needed to prevent a spurious error in certain R versions (might be a bug in R or a package)
## error message is:
##    Error in Scales$new : could not find function "loadMethod"
require(methods)

## specify a path to a MaxQuant txt folder
## Note: This folder can be incomplete, depending on your YAML config
if (1) {
  ## we will use an example dataset from PRIDE (dataset 2 of the PTXQC publication)
  local_zip = tempfile(fileext=".zip")
  download.file("ftp://ftp.pride.ebi.ac.uk/pride/data/archive/2015/11/PXD003133/txt_20min.zip", destfile = local_zip)
  unzip(local_zip, exdir = tempdir()) ## extracts content
  txt_folder = file.path(tempdir(), "txt_20min")
} else {
  ## if you have local MaxQuant output, just use it
  txt_folder = "c:/Proteomics/MouseLiver/combined/txt"
}

## use a YAML config inside the target directory if present
fh_out = getReportFilenames(txt_folder)
if (file.exists(fh_out$yaml_file))
{
  cat("\nUsing YAML config already present in target directory ...\n")
  yaml_config = yaml.load_file(input = fh_out$yaml_file)
} else {
  cat("\nYAML config not found in folder '", txt_folder, "'. The first run of PTXQC will create one for you.", sep="")
  yaml_config = list()
}

r = createReport(txt_folder, yaml_config)

cat(paste0("\nReport generated as '", r$report_file, "'\n\n"))

That’s it.