diff mda_heatmap_gen.xml @ 40:8f8ab332a050 draft

Uploaded
author insilico-bob
date Thu, 20 Jun 2019 11:39:46 -0400
parents
children 8acca16f3921
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mda_heatmap_gen.xml	Thu Jun 20 11:39:46 2019 -0400
@@ -0,0 +1,159 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<tool id="mda_heatmap_gen" name="NG-CHM Generator" version="2.3">
+   <requirements>
+       <requirement type="package" version="3.4.1">r-base</requirement> 
+		<requirement type="package" version="8.0.144">openjdk</requirement>
+   </requirements>
+   <description>Create Clustered Heat Maps</description>
+   <command interpreter="bash" detect_errors="aggressive">$__tool_directory__/heatmap.sh  "$__tool_directory__" "$__tool_data_path__/" "chm_name|Heat_Map_$hmname" "chm_description|$hmdesc" 
+	"matrix_files|path|$inputmatrix|name|datalayer|summary_method|$summarymethod"
+	"row_configuration|order_method|${d_rows.rowOrderMethod}|distance_metric|${d_rows.rowDistanceMeasure}|agglomeration_method|${d_rows.rowAgglomerationMethod}|tree_covar_cuts|0|data_type|labels"    
+	"col_configuration|order_method|${d_cols.columnOrderMethod}|distance_metric|${d_cols.columnDistanceMeasure}|agglomeration_method|${d_cols.columnAgglomerationMethod}|tree_covar_cuts|0|data_type|labels"    
+    #for $op in $operations
+       'classification|name|${op.class_name}|path|${op.repeatinput.file_name}|category|${op.cat}'
+    #end for
+ 	'output_location|$output' 
+ </command>
+	<stdio>
+      <exit_code range="1:" level="fatal" />
+	</stdio>
+  <inputs>
+    <param name="inputmatrix" type="data" format="Tabular" label="Input Data Matrix" help="Tab delimited text file with row labels, column labels, and data."  />
+    <param name="hmname" size="40" type="text" value="Heat_Map_name"  label="Heat Map Name" help="Short Name for heat map (no spaces)."/>
+           <sanitizer>
+              <valid>
+                <add preset="string.printable"/>
+            	<remove value="&quot;"/>
+            	<remove value="&apos;"/>
+                <remove value=" "/> 
+              </valid>
+           </sanitizer>
+    <param name="hmdesc" size="100" optional="true" type="text" value="Heat_Map_description" label="Heat Map Description" help="Longer description of the heat map contents."/>
+           <sanitizer>
+              <valid>
+                <add preset="string.printable"/>
+                <add value="string.letters"/>
+                <add value="string.digits"/>
+                <add value="-"/>
+                <add value="_"/>
+            	<remove value="&quot;"/>
+            	<remove value="&apos;"/>
+                <remove value=" "/> 
+              </valid>
+           </sanitizer>
+    <param name="summarymethod" 	type="select"  label="Data Summarization Method" help="For large matrices, the selected method is used to aggregate data values in the summary view.">
+		<option value="average">Average</option>
+		<option value="sample">Sample</option>
+		<option value="mode">Mode</option>
+    </param>
+    <conditional name="d_rows">
+	<param name="rowOrderMethod" type="select" label="Row ordering method" help="Determine if rows should be clustered, randomized, or remain as is.">
+		<option value="Hierarchical">Hierarchical Clustering</option>
+		<option value="Original">Original Order</option>	    
+		<option value="Random">Random</option>	    
+	</param>
+        <when value="Hierarchical">
+			<param name="rowDistanceMeasure" type="select"  label="Row Distance Metric" help="For clustering, select the method of determining distance between rows">
+				<option value="euclidean">Euclidean</option>
+				<!-- <option value="binary">Binary</option> ** breaks dendrogram  -->
+				<option value="manhattan">Manhattan</option>
+				<option value="maximum">Maximum</option>
+				<!-- <option value="canberra">Canberra</option> ** breaks dendrogram  -->
+				<option value="minkowski">Minkowski</option>	    
+				<!-- <option value="correlation">Correlation</option>	** breaks dendrogram -->    
+			</param>
+			<param name="rowAgglomerationMethod" type="select"  label="Row Clustering Method" help="For clustering, select algorithm for building clusters.">
+				<option value="average">Average Linkage</option>
+				<option value="complete">Complete Linkage</option>
+				<option value="single">Single Linkage</option>
+				<option value="ward" selected="true">Ward</option>
+				<option value="mcquitty">Mcquitty</option>	    
+				<!-- <option value="median">Median</option>	   ** breaks dendrogram 
+				<option value="centroid">Centroid</option>	** breaks dendrogram     -->
+			</param>
+        </when>
+        <when value="Original">
+		    <param name="rowDistanceMeasure" type="text" size="0"   hidden="true"  value="n/a"/>
+		    <param name="rowAgglomerationMethod" type="text" size="0"  hidden="true"   value="n/a"/>
+        </when>
+        <when value="Random">
+		    <param name="rowDistanceMeasure" type="text" size="0" hidden="true"    value="n/a"/>
+		    <param name="rowAgglomerationMethod" type="text" size="0" hidden="true"    value="n/a"/>
+        </when>
+    </conditional>
+	<conditional name="d_cols">
+	<param name="columnOrderMethod" type="select" label="Column ordering method" help="Determine if columns should be clustered, randomized, or remain as is.">
+		<option value="Hierarchical">Hierarchical Clustering</option>
+		<option value="Original">Original Order</option>	    
+		<option value="Random">Random</option>	    
+	</param>
+        <when value="Hierarchical">
+			<param name="columnDistanceMeasure" type="select"  label="Column Distance Metric" help="For clustering, select the method of determining distance between columns">
+				<option value="euclidean">Euclidean</option>
+				<!-- <option value="binary">Binary</option> ** breaks dendrogram  -->
+				<option value="manhattan">Manhattan</option>
+				<option value="maximum">Maximum</option>
+				<!-- <option value="canberra">Canberra</option> ** breaks dendrogram  -->	    
+				<option value="minkowski">Minkowski</option>	    
+				<!-- <option value="correlation">Correlation</option>	** breaks dendrogram     -->
+			</param>
+			<param name="columnAgglomerationMethod" type="select"  label="Column Clustering Method" help="For clustering, select algorithm for building clusters.">
+				<option value="average">Average Linkage</option>
+				<option value="complete">Complete Linkage</option>
+				<option value="single">Single Linkage</option>
+				<option value="ward" selected="true">Ward</option>
+				<option value="mcquitty">Mcquitty</option>	    
+				<!-- <option value="median">Median</option>	  ** breaks dendrogram  
+				<option value="centroid">Centroid</option>	  ** breaks dendrogram   -->
+			</param>
+        </when>
+        <when value="Original">
+		    <param name="columnDistanceMeasure" type="text" size="0" hidden="true"    value="n/a"/>
+		    <param name="columnAgglomerationMethod" type="text" size="0"   hidden="true"  value="n/a"/>
+        </when>
+        <when value="Random">
+		    <param name="columnDistanceMeasure" type="text" size="0"  hidden="true"   value="n/a"/>
+		    <param name="columnAgglomerationMethod" type="text" size="0" hidden="true"    value="n/a"/>
+        </when>
+    </conditional>
+    <repeat name="operations" title="Covariate Bars">
+        <param name="class_name" size="25" type="text" value="" label="Covariate Name" help="Covariate heat map display label.">
+           <sanitizer>
+              <valid>
+                <add preset="string.printable"/>
+            	<remove value="&quot;"/>
+            	<remove value="&apos;"/>
+                <remove value=" "/> 
+              </valid>
+           </sanitizer>
+        </param>
+        <param name="repeatinput" type="data" format="Tabular" label="Covariate File" help="Tab delimited text file with row or column label and covariate value on each line."/>
+	<param name="cat" type="select" label="Axis Covariate Type" help="Identify the covariate as belonging to rows or columns and containing categorical or continuous values.">
+	  <option value="row_discrete" >Row Categorical</option>
+	  <option value="row_continuous" >Row Continuous</option>
+	  <option value="column_discrete" >Column Categorical</option>
+	  <option value="column_continuous" >Column Continuous</option>
+	</param>
+    </repeat>       
+  </inputs>
+  <outputs>
+    <data name="output" label='Heat_Map_$hmname' format="ngchm"/>
+  </outputs>
+ <tests>
+    <test>
+      <param name="inputmatrix" value="400x400.txt" />
+      <param name="hmname" value="testRun" />
+      <param name="$hmdesc" value="validateTool" />
+      <param name="summarymethod" value="Average" />
+      <param name="rowOrderMethod" value="Hierarchical" />
+      <param name="rowDistanceMeasure" value="Manhattan" />
+      <param name="rowAgglomerationMethod" value="Ward" />
+      <param name="columnOrderMethod" value="Hierarchical" />
+      <param name="columnDistanceMeasure" value="Manhattan" />
+      <param name="columnAgglomerationMethod" value="Ward" />
+      <output name="output" file="Galaxy400x400-noCovariates.ngchm" lines_diff="10" />     
+
+    </test>
+<!--   galaxy/test-data/    dir where the input and output file that should match tool output will be copied -->
+  </tests>
+ </tool>