# HG changeset patch
# User yhoogstrate
# Date 1441287732 14400
# Node ID 12fb0d4b1e931bd048e7823614b2229c54b2a2bc
# Parent ec951a5017f8dfa1f71bc09559396280aca6ddff
planemo upload for repository https://bitbucket.org/EMCbioinf/galaxy-tool-shed-tools/raw/master/edger_with_design_matrix commit c7e4f2dfb8c35144b787850b60e116edfbaaa20f
diff -r ec951a5017f8 -r 12fb0d4b1e93 edgeR_Differential_Gene_Expression.xml
--- a/edgeR_Differential_Gene_Expression.xml Tue Sep 01 09:15:07 2015 -0400
+++ b/edgeR_Differential_Gene_Expression.xml Thu Sep 03 09:42:12 2015 -0400
@@ -15,6 +15,10 @@
source="both"
level="fatal"
description="Have the design- and expression-matrix been swapped?" />
+
@@ -57,12 +61,24 @@
/dev/null
#end if
+ #if $output_MDSplot_logFC_coordinates:
+ $output_MDSplot_logFC_coordinates
+ #else:
+ /dev/null
+ #end if
+
#if $output_MDSplot_bcv:
$output_MDSplot_bcv
#else:
/dev/null
#end if
+ #if $output_MDSplot_bcv_coordinates:
+ $output_MDSplot_bcv_coordinates
+ #else:
+ /dev/null
+ #end if
+
#if $output_BCVplot:
$output_BCVplot
#else:
@@ -126,15 +142,20 @@
output_xpkm <- args[7] ##FPKM file - to be implemented
output_raw_counts <- args[8]
+
output_MDSplot_logFC <- args[9]
-output_MDSplot_bcv <- args[10]
-output_BCVplot <- args[11]
-output_MAplot <- args[12]
-output_PValue_distribution_plot <- args[13]
-output_hierarchical_clustering_plot <- args[14]
-output_heatmap_plot <- args[15]
-output_RData_obj <- args[16]
-output_format_images <- args[17]
+output_MDSplot_logFC_coordinates <- args[10]
+
+output_MDSplot_bcv <- args[11]
+output_MDSplot_bcv_coordinates <- args[12]
+
+output_BCVplot <- args[13]
+output_MAplot <- args[14]
+output_PValue_distribution_plot <- args[15]
+output_hierarchical_clustering_plot <- args[16]
+output_heatmap_plot <- args[17]
+output_RData_obj <- args[18]
+output_format_images <- args[19]
## Obtain read-counts
@@ -214,11 +235,16 @@
# hierarchical clustering makes use of the distance of the MDS
- if(output_MDSplot_logFC != "/dev/null" || output_hierarchical_clustering_plot != "/dev/null") {
+ if(output_MDSplot_logFC != "/dev/null" || output_MDSplot_logFC_coordinates != "/dev/null" || output_hierarchical_clustering_plot != "/dev/null") {
write("Calculating MDS plot (logFC method)",stdout())
- mds_distance_logFC <- plotMDS.DGEList(dge,top=500,labels=rep("",nrow(dge\$samples)))# Get coordinates of unflexible plot
+ n_dim <- nrow(dge\$samples)
+ mds_distance_logFC <- plotMDS.DGEList(dge,top=500,labels=rep("",nrow(dge\$samples)),dim.plot=c(n_dim-2,n_dim-1))
dev.off()# Kill it
+ # Reset to primary dimensions
+ mds_distance_logFC\$x = mds_distance_logFC\$cmdscale.out[,1]
+ mds_distance_logFC\$y = mds_distance_logFC\$cmdscale.out[,2]
+
if(output_MDSplot_logFC != "/dev/null") {
write("Creating MDS plot (logFC method)",stdout())
if(output_format_images == "pdf") {
@@ -236,42 +262,60 @@
diff_y <-(max(mds_distance_logFC\$y)-min(mds_distance_logFC\$y))
plot(c(min(mds_distance_logFC\$x),max(mds_distance_logFC\$x) + 0.45 * diff_x), c(min(mds_distance_logFC\$y) - 0.05 * diff_y,max(mds_distance_logFC\$y) + 0.05 * diff_y), main="edgeR logFC-MDS Plot on top 500 genes",type="n", xlab="Leading logFC dim 1", ylab="Leading logFC dim 2")
points(mds_distance_logFC\$x,mds_distance_logFC\$y,pch=20)
- text(mds_distance_logFC\$x, mds_distance_logFC\$y,rownames(dge\$samples),cex=1.25,col="gray",pos=4)
+ text(mds_distance_logFC\$x,mds_distance_logFC\$y,rownames(dge\$samples),cex=1.25,col="gray",pos=4)
rm(diff_x,diff_y)
dev.off()
- }
+ }
+
+ if(output_MDSplot_logFC_coordinates != "/dev/null") {
+ n_dim <- ncol(mds_distance_logFC\$cmdscale.out)
+ colnames(mds_distance_logFC\$cmdscale.out) <- paste(rep("Dim",n_dim),(1:n_dim),sep="_")
+ export <- data.frame(samples=rownames(mds_distance_logFC\$cmdscale.out),mds_distance_logFC\$cmdscale.out)
+ row.names(export) <- NULL
+ write.table(file=output_MDSplot_logFC_coordinates,export,sep="\t",row.names=FALSE,col.names=TRUE)
+ }
}
- if(output_MDSplot_bcv != "/dev/null") {
+ if(output_MDSplot_bcv != "/dev/null" || output_MDSplot_bcv_coordinates != "/dev/null" ) {
write("Creating MDS plot (bcv method)",stdout())
## 1. First create a virtual plot to obtain the desired coordinates
- pdf("bcvmds.pdf")
- mds_distance_BCV <- plotMDS.DGEList(dge,method="bcv",top=500,labels=rep("",nrow(dge\$samples)))
- dev.off()# Kill it
+ n_dim <- nrow(dge\$samples)
+ mds_distance_BCV <- plotMDS.DGEList(dge,method="bcv",top=500,labels=rep("",nrow(dge\$samples)),dim.plot=c(n_dim-2,n_dim-1))
+ dev.off()
- ## 2. Re-plot the coordinates in a new figure with the size and settings.
- if(output_format_images == "pdf") {
- pdf(output_MDSplot_bcv,height=14,width=14)
- } else if(output_format_images == "svg") {
- svg(output_MDSplot_bcv,height=14,width=14)
- } else {
- ## png(output_MDSplot_bcv)
- ## png does not work out of the box in the Galaxy Toolshed Version of R due to its compile settings: https://biostar.usegalaxy.org/p/9170/
+ if(output_MDSplot_logFC != "/dev/null") {
+ ## 2. Re-plot the coordinates in a new figure with the size and settings.
+ if(output_format_images == "pdf") {
+ pdf(output_MDSplot_bcv,height=14,width=14)
+ } else if(output_format_images == "svg") {
+ svg(output_MDSplot_bcv,height=14,width=14)
+ } else {
+ ## png(output_MDSplot_bcv)
+ ## png does not work out of the box in the Galaxy Toolshed Version of R due to its compile settings: https://biostar.usegalaxy.org/p/9170/
+
+ bitmap(output_MDSplot_bcv,type="png16m",height=7*3,width=7*3)
+ }
- bitmap(output_MDSplot_bcv,type="png16m",height=7*3,width=7*3)
+ diff_x <- abs(max(mds_distance_BCV\$x)-min(mds_distance_BCV\$x))
+ diff_y <- (max(mds_distance_BCV\$y)-min(mds_distance_BCV\$y))
+ plot(c(min(mds_distance_BCV\$x),max(mds_distance_BCV\$x) + 0.45 * diff_x), c(min(mds_distance_BCV\$y) - 0.05 * diff_y,max(mds_distance_BCV\$y) + 0.05 * diff_y), main="edgeR BCV-MDS Plot",type="n", xlab="Leading BCV dim 1", ylab="Leading BCV dim 2")
+ points(mds_distance_BCV\$x,mds_distance_BCV\$y,pch=20)
+ text(mds_distance_BCV\$x, mds_distance_BCV\$y,rownames(dge\$samples),cex=1.25,col="gray",pos=4)
+ rm(diff_x,diff_y)
+
+ dev.off()
}
- diff_x <- abs(max(mds_distance_BCV\$x)-min(mds_distance_BCV\$x))
- diff_y <- (max(mds_distance_BCV\$y)-min(mds_distance_BCV\$y))
- plot(c(min(mds_distance_BCV\$x),max(mds_distance_BCV\$x) + 0.45 * diff_x), c(min(mds_distance_BCV\$y) - 0.05 * diff_y,max(mds_distance_BCV\$y) + 0.05 * diff_y), main="edgeR BCV-MDS Plot",type="n", xlab="Leading BCV dim 1", ylab="Leading BCV dim 2")
- points(mds_distance_BCV\$x,mds_distance_BCV\$y,pch=20)
- text(mds_distance_BCV\$x, mds_distance_BCV\$y,rownames(dge\$samples),cex=1.25,col="gray",pos=4)
- rm(diff_x,diff_y)
-
- dev.off()
+ if(output_MDSplot_bcv_coordinates != "/dev/null") {
+ n_dim <- ncol(mds_distance_BCV\$cmdscale.out)
+ colnames(mds_distance_BCV\$cmdscale.out) <- paste(rep("Dim",n_dim),(1:n_dim),sep="_")
+ export <- data.frame(samples=rownames(mds_distance_BCV\$cmdscale.out),mds_distance_BCV\$cmdscale.out)
+ row.names(export) <- NULL
+ write.table(file=output_MDSplot_bcv_coordinates,export,sep="\t",row.names=FALSE,col.names=TRUE)
+ }
}
@@ -423,7 +467,9 @@
-
+
+
+
@@ -457,6 +503,10 @@
+
+ outputs and ("make_output_MDSplot_logFC_coordinates" in outputs)
+
+
outputs and ("make_output_MDSplot_bcv" in outputs)
@@ -467,6 +517,10 @@
+
+ outputs and ("make_output_MDSplot_bcv_coordinates" in outputs)
+
+
outputs and ("make_output_BCVplot" in outputs)