-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathread_length.R
More file actions
43 lines (39 loc) · 1.35 KB
/
read_length.R
File metadata and controls
43 lines (39 loc) · 1.35 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
library(tidyverse)
args <- commandArgs(trailingOnly=TRUE)
setwd(args[1])
df <- read.csv(file=args[2])
base.file <- args[3]
outdir <- args[4]
x_low <- min(df$read_length)
x_high <- max(df$read_length)
x_range <- x_low:x_high
mean.length <- mean(df$read_length)
list <- suppressWarnings(hist(df$read_length,
breaks=x_range,
freq=TRUE,
plot=FALSE))
y.value.label <- max(list$counts)/sum(list$count)
p <- ggplot(data=df, aes(x=read_length)) +
geom_bar(aes(y=stat(count)/sum(count)),
colour="black",
fill="grey50") +
scale_x_continuous(breaks=x_range)+
theme_bw() +
theme(plot.title = element_text(size = 16)) +
theme(axis.text=element_text(size=16),
axis.title=element_text(size=16),
plot.title = element_text(hjust = 0.5),
axis.line = element_line(colour = "black"),
panel.border = element_blank(),
panel.background = element_blank(),
panel.grid.major = element_blank()) +
xlab("Read length") +
ylab("Relative frequency") +
ggtitle(paste0("Read length distribution ",base.file)) +
annotate("text", x=x_range[3],
y=y.value.label,
label= paste0("Mean read length: ",
round(mean.length,1)),
size=5)
ggsave(filename=paste0(outdir,"/","Read-length-frequency",base.file,".png"),
plot=p )