File: plotPanels.R

package info (click to toggle)
r-cran-seqinr 3.3-3-1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 5,844 kB
  • ctags: 69
  • sloc: ansic: 1,955; makefile: 13
file content (22 lines) | stat: -rw-r--r-- 809 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
plotPanels <- function(kitname, data, xlim = NULL, cex = 0.75, alpha = 0.5){
  df <- data[[kitname]]
  df$marker <- as.character(df$marker)
  df[df$marker == "AMEL", "marker"] <- "A"
  dcoln <- unique(as.character(df$dye.col))
  ncol <- length(dcoln)
  bmin <- min(df$min.bp)
  bmax <- max(df$max.bp)
  if(is.null(xlim)) xlim <- c(bmin, bmax)
  plot.new()
  plot.window(xlim = xlim, ylim = c(0, ncol))
  yscale <- (ncol-1):0
  names(yscale) <- dcoln
  for(i in 1:nrow(df)){
    col <- as.character(df[i, "dye.col"])
    colalpha <- col2alpha(col, alpha)
    rect(df[i, "min.bp"], yscale[col] + 0.25, df[i, "max.bp"], yscale[col] + 0.5, col = colalpha)
    text(df[i, "min.bp"], yscale[col]+0.75, df[i, "marker"], pos = 4, cex = cex)
  }
  title(main = kitname, xlab = "Amplicon Size Ranges [bp]")
  axis(1)
}