]> git.donarmstrong.com Git - rsem.git/blobdiff - rsem-gen-transcript-plots
Modified wiggle.cpp & wiggle.h for more accurate floating point number arithmetics...
[rsem.git] / rsem-gen-transcript-plots
index 552632a5534272dacba75f68accadbe24ffc7367..01bc9bd6d60647b4cf7929ee2c9efad661a85e39 100755 (executable)
@@ -76,7 +76,11 @@ generate_a_page <- function(tids, gene_id = NULL) {
       vec <- readdepth_uniq[[tids[i]]]
       stopifnot(!is.null(vec))
       if (is.na(vec[[2]])) wiggle_uniq <- rep(0, vec[[1]]) else wiggle_uniq <- as.numeric(unlist(strsplit(vec[[2]], split = " ")))
-#      stopifnot(len == length(wiggle_uniq), len == sum(wiggle >= wiggle_uniq)) 
+      stopifnot(len == length(wiggle_uniq))
+      if (len != sum(wiggle >= wiggle_uniq)) {
+        cat("Warning: transcript ", tids[i], " has position(s) that read covarege with multireads is smaller than read covarge without multireads.\n", "         The 1-based position(s) is(are) : ", which(wiggle < wiggle_uniq), ".\n", "         This may be due to floating point arithmetics.\n", sep = "") 
+      }
+
       heights <- rbind(wiggle_uniq, wiggle - wiggle_uniq)      
       barplot(heights, space = 0, border = NA, names.arg = 1:len, col = c("black", "red")) 
     }