diff ggplot_histogram.xml @ 0:9d060114554c draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ggplot2 commit 6e466ce83e2e5c0dd0ba30356d0488cf74574b8f
author iuc
date Tue, 22 Aug 2017 06:41:36 -0400
parents
children f52035800250
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ggplot_histogram.xml	Tue Aug 22 06:41:36 2017 -0400
@@ -0,0 +1,138 @@
+<tool id="ggplot2_histogram" name="Histogram w ggplot2" version="@VERSION@">
+    <macros>
+        <import>macros.xml</import>
+    </macros>
+    <expand macro="requirements">
+        <requirement type="package" version="1.4.2">r-reshape2</requirement>
+    </expand>
+    <command detect_errors="exit_code"><![CDATA[
+cat '$script' &&
+Rscript '$script'
+    ]]></command>
+    <configfiles>
+        <configfile name="script"><![CDATA[
+
+@R_INIT@
+
+## Import library
+library("reshape2")
+library("ggplot2")
+
+integrated <- read.csv('$input1', sep='\t', header=TRUE)
+input <- melt(integrated)
+
+## Show/hide legend
+#if $legend == "yes"
+    gg_legend = NULL
+#else
+    gg_legend = theme(legend.position="none")
+#end if
+
+## density
+#if $density == "counts"
+    gg_density = ggplot(input,aes(value, color=variable))
+    gg_freq = NULL
+#elif $density == "nfreq"
+    gg_density = ggplot(input,aes(value, ..ncount.., color=variable))
+    gg_freq = NULL
+#elif $density == "freq"
+    gg_density = ggplot(input,aes(value, color=variable))
+    gg_freq = aes(y=..count../sum(..count..))
+#end if
+
+@XY_SCALING@
+
+gg_width = $with_output_dim
+gg_height = $height_output_dim
+
+
+@TRANSFORM@
+
+#if $facet == "facet"
+    gg_facet = facet_wrap(~ variable)
+#else
+    gg_facet = NULL
+#end if
+
+#if $coloring.colorscheme == "Default"
+    gg_colorscale = NULL
+#else
+    gg_colorscale = scale_color_brewer(palette=$coloring.colors, direction=$coloring.colororder)
+#end if
+
+gg_density+
+geom_freqpoly(gg_freq, binwidth=$binwidth, size=$size)+gg_facet+gg_colorscale+
+gg_scalex+gg_scaley+theme_bw()+xlab('$xlab')+ylab('$ylab')+gg_legend+ggtitle('$title')
+
+ggsave(file='Rplot.pdf')
+dev.off()
+        ]]></configfile>
+    </configfiles>
+    <inputs>
+        <param name="input1" type="data" format="tabular" label="Input should have column headers - these will be the columns that are plotted"/>
+        <expand macro="title" />
+        <expand macro="xy_lab" />
+        <param name="size" type="float" value="1.0" label="relative line width" />
+        <param name="binwidth" type="float" value="0.5" label="Bin width for plotting"/>
+
+        <expand macro="transform" />
+
+        <param name="density" type="select" label="Advanced - plot counts or density">
+            <option value="counts">Plot counts on the y-axis</option>
+            <option value="freq">Plot frequency on the y-axis</option>
+            <option value="nfreq">Plot normalized frequency on the y-axis</option>
+        </param>
+        <param name="facet" type="select" label="Advanced - faceting">
+            <option value="none">Plot my groups on one plot</option>
+            <option value="facet">Plot my groups on individual plots</option>
+        </param>
+        <conditional name="coloring">
+            <param name="colorscheme" type="select" label="Advanced - coloring groups" >
+                <option value="Default" selected="True">No thanks - just use the default scheme to color code my groups (columns)</option>
+                <option value="Defined">I want to use defined color palettes to differentiate my groups (columns) </option>
+            </param>
+            <when value="Default">
+            </when>
+            <when value="Defined">
+                <expand macro="colors" />
+                <param name="colororder" type="select" label="Reverse color scheme" >
+                    <option value="1">Default order of color scheme</option>
+                    <option value="-1">Reverse the order of my color scheme</option>
+                </param> 
+            </when>
+        </conditional>
+        <expand macro="xy_scaling" />
+        <expand macro="dimensions" />
+        <param name="legend" type="select" label="Legend options">
+            <option value="yes">Include legend on plot</option>
+            <option value="no">Hide legend</option>
+        </param>
+    </inputs>
+    <outputs>
+        <!-- <data name="output1" format="png" from_work_dir="Rplot.png"/>
+            ToDo: It would be nice to have different output formats for all tools
+        -->
+        <data name="output1" format="pdf" from_work_dir="Rplot.pdf"/>
+    </outputs>
+    <tests>
+        <test>
+            <param name="input1" value="mtcars.txt"/>
+            <output name="output1" file="ggplot_histogram_result1.pdf" compare="sim_size"/>
+        </test>
+    </tests>
+    <help><![CDATA[
+
+This tool will generate a histogram representing the distrinutions of each numerical column. Each column should have a descriptive header with no spaces, which will be used in the plot legend to represent the corresponding column (group).
+
+Input data example:
+ID  Cond_A Cond_B
+gene_A  10  15
+gene_B  8   12
+gene_C 10   15
+gene_D  6   9
+gene_E  9   13.5
+gene_F  8   12
+
+    ]]></help>
+    <expand macro="citations"/>
+</tool>