|
1
|
1 ---
|
|
|
2 output: html_document
|
|
|
3 ---
|
|
|
4
|
|
|
5 ```{r setup, include=FALSE, warning=FALSE, message=FALSE}
|
|
|
6 knitr::opts_chunk$set(
|
|
|
7 echo = as.logical(opt$X_e),
|
|
|
8 error = TRUE,
|
|
|
9 eval = TRUE
|
|
|
10 )
|
|
|
11 ```
|
|
|
12
|
|
|
13
|
|
3
|
14 ### Per base sequence quality
|
|
1
|
15
|
|
|
16 ```{r 'per base sequence quality', fig.width=10}
|
|
|
17 ## reads 1
|
|
|
18 pbsq_1 = extract_data_module(paste0(opt$X_d, '/read_1_fastqc/fastqc_data.txt'), 'Per base sequence quality')
|
|
|
19 pbsq_1$id = 1:length(pbsq_1$X.Base)
|
|
|
20 pbsq_1$trim = 'before'
|
|
|
21
|
|
|
22 ## reads 2
|
|
|
23 pbsq_2 = extract_data_module(paste0(opt$X_d, '/read_2_fastqc/fastqc_data.txt'), 'Per base sequence quality')
|
|
|
24 pbsq_2$id = 1:length(pbsq_2$X.Base)
|
|
|
25 pbsq_2$trim = 'after'
|
|
|
26
|
|
|
27 comb_pbsq = rbind(pbsq_1, pbsq_2)
|
|
|
28 comb_pbsq$trim = factor(levels = c('before', 'after'), comb_pbsq$trim)
|
|
|
29
|
|
|
30 p = ggplot(data = comb_pbsq) +
|
|
|
31 geom_boxplot(mapping = aes(x = id,
|
|
|
32 lower = Lower.Quartile,
|
|
|
33 upper = Upper.Quartile,
|
|
|
34 middle = Median,
|
|
|
35 ymin = X10th.Percentile,
|
|
|
36 ymax = X90th.Percentile,
|
|
|
37 fill = "yellow"),
|
|
|
38 stat = 'identity') +
|
|
|
39 geom_line(mapping = aes(x = id, y = Mean, color = "red")) +
|
|
3
|
40 scale_x_continuous(name = 'Position in read (bp)', breaks = pbsq_2$id, labels = pbsq_2$X.Base) +
|
|
|
41 scale_y_continuous(limits = c(0, max(comb_pbsq$Upper.Quartile) + 5)) +
|
|
1
|
42 scale_fill_identity() +
|
|
|
43 scale_color_identity() +
|
|
|
44 facet_grid(. ~ trim) +
|
|
3
|
45 theme(axis.text.x = element_text(size = 5),
|
|
|
46 panel.background = element_rect(fill = NA),
|
|
|
47 panel.grid.major.y = element_line(color = 'blue', size = 0.1))
|
|
1
|
48 p
|
|
3
|
49 ```
|
|
1
|
50
|