diff --git a/R/CMplot.r b/R/CMplot.r index 20ad2c4..91b4869 100644 --- a/R/CMplot.r +++ b/R/CMplot.r @@ -373,8 +373,10 @@ CMplot <- function( x_max <- max(x, na.rm=TRUE) y_min <- min(y, na.rm=TRUE) y_max <- max(y, na.rm=TRUE) - x_scaled <- ceiling((x - x_min) / (x_max - x_min) * w * dpi / scale) - y_scaled <- ceiling((y - y_min) / (y_max - y_min) * h * dpi / scale) + x_range <- x_max - x_min + y_range <- y_max - y_min + if(x_range == 0) x_scaled <- rep(0L, length(x)) else x_scaled <- ceiling((x - x_min) / x_range * w * dpi / scale) + if(y_range == 0) y_scaled <- rep(0L, length(y)) else y_scaled <- ceiling((y - y_min) / y_range * h * dpi / scale) key <- x_scaled * 1000000L + y_scaled !duplicated(key) } @@ -1655,7 +1657,7 @@ CMplot <- function( # par(xpd=TRUE) } - pvalue <- as.vector(Pmap[,3:(R+2)]) + pvalue <- as.vector(unlist(Pmap[,3:(R+2)])) if(is.null(ylim)){ if(!is.null(threshold)){ if(LOG10){