Repository 'ggplot2_point'
hg clone https://toolshed.g2.bx.psu.edu/repos/iuc/ggplot2_point

Changeset 2:9a482995958c (2018-06-11)
Previous changeset 1:a78aa83f6625 (2017-08-29) Next changeset 3:46f91106439b (2019-02-11)
Commit message:
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ggplot2 commit f9fb73a88ab8b52ce11c25a966d4fe99e67c9fbf
modified:
ggplot_point.xml
macros.xml
test-data/mtcars.txt
added:
test-data/ggplot_heatmap_result1.pdf
test-data/ggplot_pca_result1.pdf
b
diff -r a78aa83f6625 -r 9a482995958c ggplot_point.xml
--- a/ggplot_point.xml Tue Aug 29 09:02:26 2017 -0400
+++ b/ggplot_point.xml Mon Jun 11 16:04:40 2018 -0400
[
b'@@ -1,32 +1,26 @@\n-<tool id="ggplot2_point" name="Scatterplot w ggplot2" version="@VERSION@">\n+<tool id="ggplot2_point" name="Scatterplot w ggplot2" version="@VERSION@+galaxy0">\n     <macros>\n         <import>macros.xml</import>\n     </macros>\n-    <expand macro="requirements"></expand>\n+    <expand macro="requirements">\n+        <requirement type="package" version="1.2.1">r-svglite</requirement>\n+    </expand>\n     <command detect_errors="exit_code"><![CDATA[\n cat \'$script\' &&\n-Rscript \'$script\' &&\n-mv output_plot.pdf $output1\n+Rscript \'$script\'\n     ]]></command>\n     <configfiles>\n         <configfile name="script"><![CDATA[\n-\n @R_INIT@\n \n ## Import library\n-library("ggplot2")\n+library(ggplot2)\n \n @XY_SCALING@\n \n-## Choose theme for plot\n-#if $theme == "bw"\n-    gg_theme = theme_bw()\n-#else\n-    gg_theme = NULL\n-#end if\n+@THEME@\n \n-gg_width = $with_output_dim\n-gg_height = $height_output_dim\n+@LEGEND@\n \n input <- read.csv(\'$input1\', sep=\'\\t\', header=TRUE)\n \n@@ -35,91 +29,87 @@\n names(input)[$yplot] <- "ycol"\n \n ## choosing whether to plot data as multiple groups on one plot(factoring) OR multiple groups on different plots\n-#if $factor.factoring == "Multiple"\n+#if $adv.factor.factoring == "Multiple"\n      gg_facet = facet_wrap( ~ factor)\n      gg_factor = NULL\n      color_scale = NULL\n-     #if $points.pointoptions == "Default"\n+     #if $adv.points.pointoptions == "Default"\n         gg_point = geom_point(size=1, alpha=1, gg_factor)\n      #else\n-        gg_point = geom_point(size=\'$points.size\', alpha=\'$points.alpha\', colour=\'$points.pointcolor\')\n+        gg_point = geom_point(size=\'$adv.points.size\', alpha=\'$adv.points.alpha\', colour=\'$adv.points.pointcolor\')\n      #end if\n \n-    names(input)[$factor.factorcol] <- "factor"\n+    names(input)[$adv.factor.factorcol] <- "factor"\n \n-#elif $factor.factoring == "Single"\n+#elif $adv.factor.factoring == "Single"\n     gg_facet = NULL\n     gg_factor = aes(colour=factor(factor))\n \n-        #if $points.pointoptions == "default"\n-            gg_point = geom_point(size=1, alpha=1, gg_factor)\n-        #else\n-            gg_point = geom_point(size=$points.size, alpha=\'$points.alpha\', gg_factor)\n-        #end if\n+    #if $adv.points.pointoptions == "default"\n+        gg_point = geom_point(size=1, alpha=1, gg_factor)\n+    #else\n+        gg_point = geom_point(size=$adv.points.size, alpha=\'$adv.points.alpha\', gg_factor)\n+    #end if\n \n-      #if $colors == "Default"\n-          color_scale = scale_colour_hue(direction=\'$factor.colororder\')\n-      #else\n-          color_scale = scale_color_brewer(palette=\'$colors\', direction=\'$factor.colororder\')\n-      #end if\n+    #if $adv.colors == "Default"\n+        color_scale = scale_colour_hue(direction=\'$adv.factor.colororder\')\n+    #else\n+        color_scale = scale_color_brewer(palette=\'$adv.colors\', direction=\'$adv.factor.colororder\')\n+    #end if\n \n-    names(input)[$factor.factorcol] <- "factor"\n+    names(input)[$adv.factor.factorcol] <- "factor"\n #else\n-      gg_facet = NULL\n-      gg_factor = NULL\n-      color_scale = NULL\n+    gg_facet = NULL\n+    gg_factor = NULL\n+    color_scale = NULL\n \n-        #if $points.pointoptions == "default"\n-            gg_point = geom_point(size=1, alpha=1, gg_factor)\n-        #else\n-            gg_point = geom_point(size=$points.size, alpha=\'$points.alpha\', colour=\'$points.pointcolor\')\n-        #end if\n+    #if $adv.points.pointoptions == "default"\n+        gg_point = geom_point(size=1, alpha=1, gg_factor)\n+    #else\n+        gg_point = geom_point(size=$adv.points.size, alpha=\'$adv.points.alpha\', colour=\'$adv.points.pointcolor\')\n+    #end if\n #end if\n \n @TRANSFORM@\n \n ##axis label custization\n-#if $axis_title_customization.axis_customization == "default"\n+#if $adv.axis_title_customization.axis_customization == "default"\n     gg_axistitle = theme(axis.title = element_text(color = NULL, size = NULL, face = NULL))\n #else\n-    gg_axistitle = theme(axis.title = element_text(color = \'$color\', size = \'$size\', face = \'$face'..b'eme" >\n-                    <option value="1">Default order of color scheme</option>\n-                    <option value="-1">Reverse the order of my color scheme</option>\n-                </param> \n-            </when>\n-            <when value="Multiple">\n-                <param name="factorcol" type="integer" value="1" label="column differentiating the different groups" />\n-            </when>\n-        </conditional>\n-        <expand macro="transform" />\n-\n-        <expand macro="xy_scaling" />\n-\n-        <param name="theme" type="select" label="Advanced - backgound theme for plot">\n-          <option value="bw">Black and white</option>\n-          <option value="Default">Default (grey)</option>\n-        </param>\n-\n-        <conditional name="axis_title_customization">\n-            <expand macro="axis_customization" label="Advanced - axis title options" />\n-        </conditional>\n-        <conditional name="axis_text_customization">\n-            <expand macro="axis_customization" label="Advanced - axis text options" />\n-        </conditional>\n-        <conditional name="plot_title_customization">\n-            <expand macro="axis_customization" label="Advanced - Plot title options" />\n-        </conditional>\n-        <param name="gridlinecust" type="select" label="Advanced - grid lines">\n-          <option value="default">Default grid lines</option>\n-          <option value="hidemajor">Hide major grid lines</option>\n-          <option value="hideminor">Hide minor grid lines</option>\n-          <option value="hideboth">Hide major and minor grid lines</option>\n-        </param>\n-        <expand macro="dimensions" />\n+            <expand macro="transform" />\n+            <expand macro="xy_scaling" />\n+            <expand macro="theme" />\n+            <expand macro="legend" />\n+        </section>\n+        <section name="out" title="Output Options" expanded="true">\n+            <expand macro="dimensions" />\n+        </section>\n     </inputs>\n     <outputs>\n-        <!-- <data name="output1" format="png" from_work_dir="Rplot.png"/>\n-            ToDo: It would be nice to have different output formats for all tools\n-        -->\n-        <data name="output1" format="pdf" from_work_dir="Rplot.pdf"/>\n+        <expand macro="additional_output" />\n     </outputs>\n     <tests>\n         <test>\n             <param name="input1" value="mtcars.txt" ftype="tabular" />\n-            <output name="output1" file="ggplot_point_result1.pdf" compare="sim_size" />\n+            <param name="additional_output_format" value="pdf" />\n+            <output name="output2" file="ggplot_point_result1.pdf" compare="sim_size" />\n         </test>\n     </tests>\n     <help><![CDATA[\n-        This tool will generate a scatterplot representing data from two groups/conditions. \n+This tool will generate a scatterplot representing data from two groups/conditions.\n \n-        The input data should be in tabular format and the user can determine which groups (columns) to plot.\n+The input data should be in tabular format and the user can determine which groups (columns) to plot.\n \n-        Multiple groups can be plotted on the same or multiple plots by providing a column with a group identifier under "Advanced - plotting multiple groups".\n+Multiple groups can be plotted on the same or multiple plots by providing a column with a group identifier under "Advanced - plotting multiple groups".\n \n-        Feel free to explore the (many) advanced options to customize your plot. Galaxy makes this type optimization easy for the user!  \n+Feel free to explore the (many) advanced options to customize your plot. Galaxy makes this type optimization easy for the user!\n \n-        The ouput is a pdf file with your scatterplot. The dimensions of this file can be modified under "Advanced - output dimensions"\n-\n+The ouput is a pdf file with your scatterplot. The dimensions of this file can be modified under "Advanced - output dimensions"\n     ]]></help>\n     <expand macro="citations"/>\n </tool>\n'
b
diff -r a78aa83f6625 -r 9a482995958c macros.xml
--- a/macros.xml Tue Aug 29 09:02:26 2017 -0400
+++ b/macros.xml Mon Jun 11 16:04:40 2018 -0400
[
b'@@ -9,27 +9,116 @@\n     <token name="@VERSION@">2.2.1</token>\n \n     <token name="@R_INIT@"><![CDATA[\n-## Setup R error handling to go to stderr\n-options(show.error.messages=F, error=function(){cat(geterrmessage(), file=stderr()); q("no",1,F)})\n+        ## Setup R error handling to go to stderr\n+        options(show.error.messages=F, error=function(){cat(geterrmessage(), file=stderr()); q("no",1,F)})\n \n-## Unify locale settings\n-loc <- Sys.setlocale("LC_MESSAGES", "en_US.UTF-8")\n+        ## Unify locale settings\n+        loc <- Sys.setlocale("LC_MESSAGES", "en_US.UTF-8")\n     ]]></token>\n \n     <token name="@TRANSFORM@"><![CDATA[\n-#if $transform == "log2"\n-    input["value"] <- log2(input["value"])\n-#elif $transform == "log2plus1"\n-    input["value"] <- log2(input["value"]+1)\n-#elif $transform == "log10"\n-    input["value"] <- log10(input["value"])\n-#elif $transform == "log10plus1"\n-    input["value"] <- log10(input["value"]+1)\n-#end if\n+        #if $adv.transform == "log2"\n+            input["value"] <- log2(input["value"])\n+        #elif $adv.transform == "log2plus1"\n+            input["value"] <- log2(input["value"]+1)\n+        #elif $adv.transform == "log10"\n+            input["value"] <- log10(input["value"])\n+        #elif $adv.transform == "log10plus1"\n+            input["value"] <- log10(input["value"]+1)\n+        #end if\n+    ]]></token>\n+\n+    <token name="@XY_SCALING@"><![CDATA[\n+        #Choose between automatically scaled x and y axis or user defined\n+        #if $adv.scaling.plot_scaling == "Automatic"\n+            gg_scalex = NULL\n+            gg_scaley = NULL\n+        #else\n+            gg_scalex = xlim($adv.scaling.xaxismin, $adv.scaling.xaxismax)\n+            gg_scaley = ylim($adv.scaling.yaxismin, $adv.scaling.yaxismax)\n+            cat("\\n xaxismin: ", $adv.scaling.xaxismin)\n+            cat("\\n xaxismax: ", $adv.scaling.xaxismax)\n+            cat("\\n yaxismin: ", $adv.scaling.yaxismin)\n+            cat("\\n yaxismax: ", $adv.scaling.yaxismax)\n+        #end if\n+    ]]></token>\n+\n+    <token name="@THEME@"><![CDATA[\n+        ## Choose theme for plot\n+        #if $adv.theme == "bw"\n+            gg_theme = theme_bw()\n+        #else\n+            gg_theme = NULL\n+        #end if\n     ]]></token>\n \n+    <token name="@LEGEND@"><![CDATA[\n+        ## Show/hide legend\n+        #if $adv.legend == "yes"\n+            gg_legend = theme(legend.position="right")\n+        #else\n+            gg_legend = theme(legend.position="none")\n+            cat("\\n no legend")\n+        #end if\n+    ]]></token>\n+    <token name="@SAVE_OUTPUT@"><![CDATA[\n+        ## output options need to be in out section\n+        gg_width <- as.double(\'$out.width_output_dim\')\n+        gg_height <- as.double(\'$out.height_output_dim\')\n+        gg_unit <- \'$out.unit_output_dim\'\n+        gg_dpi <- as.double(\'$out.dpi_output_dim\')\n+        gg_add_device <- \'$out.additional_output_format\'\n+        output1 <- \'$output1\'\n+        output2 <- \'$output2\'\n+\n+        ## ggsave to png\n+        ggsave(filename = output1, plot = plot_out, width = gg_width, height = gg_height, units = gg_unit, dpi = gg_dpi, device = "png")\n+        if(gg_add_device != "none"){\n+          ggsave(filename = output2, plot = plot_out, width = gg_width, height = gg_height, units = gg_unit, dpi = gg_dpi, device = gg_add_device)\n+        }\n+    ]]></token>\n+    <xml name="read_complex_input">\n+        <param name="input1" type="data" format="tabular" label="Select table"/>\n+        <conditional name="inputdata">\n+            <param name="input_type" type="select" label="Select input dataset options" help="specific dataset input for reading">\n+                <option value="with_header" selected="true">Dataset with header</option>\n+                <option value="with_rownames">Dataset with row names</option>\n+                <option value="with_header_rownames">Dataset with header and row names</option>\n+                <option value="no_header_rownames">Dataset without header or row names</opt'..b'="dpi of output" help="Plot resolution. Applies only to raster output types."/>\n+        <param name="additional_output_format" type="select" label="Additional output format" help="PNG is always selected as output format">\n+            <option value="none" selected="true">only PNG</option>\n+            <option value="pdf">PDF</option>\n+            <option value="svg">SVG</option>\n+            <option value="eps">EPS</option>\n+            <option value="ps">PS</option>\n+            <option value="tex">TEX (pictex)</option>\n+            <option value="jpeg">JPEG</option>\n+            <option value="tiff">TIFF</option>\n+            <option value="bmp">BMP</option>\n+        </param>\n     </xml>\n     <xml name="citations">\n         <citations>\n-            <citation type="bibtex">@Book{\n+            <citation type="bibtex">@book{wickham2009ggplot2,\n                 author = {Hadley Wickham},\n                 title = {ggplot2: Elegant Graphics for Data Analysis},\n                 publisher = {Springer-Verlag New York},\n                 year = {2009},\n                 isbn = {978-0-387-98140-6},\n-                url = {http://ggplot2.org}\n+                url = {http://ggplot2.org},\n                 }\n             </citation>\n+            <yield />\n         </citations>\n     </xml>\n-\n-    <xml name="axis_customization" token_label="Advanced - axis title options">\n+    <xml name="axis_customization" token_label="Axis title options">\n         <param name="axis_customization" type="select" label="@LABEL@">\n-            <option value="default" selected="True">Default</option>\n+            <option value="default" selected="true">Default</option>\n             <option value="defined">User defined label options</option>\n         </param>\n         <when value="default">\n@@ -113,7 +225,7 @@\n                 <option value="magenta">Magenta</option>\n                 <option value="cyan">Cyan</option>\n                 <option value="grey">Grey</option>\n-                <option value="gold">Gold</option> \n+                <option value="gold">Gold</option>\n             </param>\n             <param name="face" type="select" label="Font effect of axis label">\n                 <option value="plain">Normal (default)</option>\n@@ -122,7 +234,6 @@\n             </param>\n         </when>\n     </xml>\n-\n     <xml name="colors">\n         <param name="colors" type="select" label="Color schemes to differentiate your groups" >\n             <option value="Default">Default color scheme</option>\n@@ -159,8 +270,22 @@\n             <option value="RdBu">Red to blue (discrete, max=11 colors)</option>\n             <option value="PuOr">Purple to orange (discrete, max=11 colors)</option>\n             <option value="PRGn">Purple to green (discrete, max=11 colors)</option>\n-            <option value="BrBG">Brown to teal (discrete, max=11 colors)</option> \n+            <option value="BrBG">Brown to teal (discrete, max=11 colors)</option>\n         </param>\n     </xml>\n-\n+    <xml name="additional_output">\n+        <data name="output1" format="png" label="${tool.name} on ${on_string}: png"/>\n+        <data format="pdf" name="output2" label="${tool.name} on ${on_string}: ${out.additional_output_format}">\n+            <change_format>\n+                <when input="out.additional_output_format" value="svg" format="svg" />\n+                <when input="out.additional_output_format" value="eps" format="eps" />\n+                <when input="out.additional_output_format" value="ps" format="ps" />\n+                <when input="out.additional_output_format" value="tex" format="txt" />\n+                <when input="out.additional_output_format" value="jpeg" format="jpg" />\n+                <when input="out.additional_output_format" value="tiff" format="tiff" />\n+                <when input="out.additional_output_format" value="bmp" format="bmp" />\n+            </change_format>\n+            <filter>out[\'additional_output_format\'] != "none"</filter>\n+        </data>\n+    </xml>\n </macros>\n'
b
diff -r a78aa83f6625 -r 9a482995958c test-data/ggplot_heatmap_result1.pdf
b
Binary file test-data/ggplot_heatmap_result1.pdf has changed
b
diff -r a78aa83f6625 -r 9a482995958c test-data/ggplot_pca_result1.pdf
b
Binary file test-data/ggplot_pca_result1.pdf has changed