diff mda_advanced_heatmap_gen.xml @ 0:8893ea2915cc draft

Initial Version of Advanced Heat Map Tool
author insilico-bob
date Tue, 08 Aug 2017 14:01:05 -0400
parents
children 603f99d9e776
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mda_advanced_heatmap_gen.xml	Tue Aug 08 14:01:05 2017 -0400
@@ -0,0 +1,220 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<tool id="mda_advanced_heatmap_gen" name="Advanced NG-CHM Generator" version="2.0.5">
+  <description> Create Clustered Heat Maps</description>
+<!-- command interpreter="python" detect_errors="aggressive">$__tool_directory__/mad_advanced_heatmap_gen.py  'Heat_Map_$hmname' '$hmdesc' '$inputmatrix' ${d_rows.rowOrderMethod} ${d_rows.rowDistanceMeasure} ${d_rows.rowAgglomerationMethod} ${d_cols.columnOrderMethod} ${d_cols.columnDistanceMeasure} ${d_cols.columnAgglomerationMethod} $summarymethod '$__tool_directory__' ${d_rows.rowDendroCut} ${d_cols.colDendroCut} $rowDataType $colDataType  -->
+<command interpreter="bash" detect_errors="aggressive">$__tool_directory__/heatmap_advanced.sh  'Heat_Map_$hmname' '$hmdesc' '$inputmatrix' ${d_rows.rowOrderMethod} ${d_rows.rowDistanceMeasure} ${d_rows.rowAgglomerationMethod} ${d_cols.columnOrderMethod} ${d_cols.columnDistanceMeasure} ${d_cols.columnAgglomerationMethod} $summarymethod '$__tool_directory__' ${d_rows.rowDendroCut} ${d_cols.colDendroCut} $rowDataType $colDataType
+
+    "
+    #for $attr in $hm_attribute
+      ${attr.attrbute_key}:${attr.attrbute_value};
+    #end for
+    "
+
+    #for $op in $operations
+       ${op.class_name}
+       ${op.repeatinput.file_name}
+       ${op.cat}
+      #end for
+ 	'$output' 
+ </command>
+	<stdio>
+      <exit_code range="1:" level="fatal" />
+	</stdio>
+  <inputs>
+    <param name="inputmatrix" type="data" format="Tabular" label="Input Matrix" />
+    <param name="hmname" size="20" type="text" value="Heat_Map_name"  label="User Defined Heat Map Name"/>
+    <param name="hmdesc" size="100" optional="true" type="text" value="Heat_Map_description" label="User Defined Heat Map Description"/>
+    <param name="summarymethod" 	type="select"  label="Data Summarization Method">
+		<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="Choices -- Hierarchical Clustering, Original Order, Random">
+		<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="Euclidean, Binary, Manhattan, Maximum, Canberra, Minkowski, or Correlation">
+		<option value="euclidean">Euclidean</option>
+		<option value="binary">Binary</option>
+		<option value="manhattan">Manhattan</option>
+		<option value="maximum">Maximum</option>
+		<option value="canberra">Canberra</option>	    
+		<option value="minkowski">Minkowski</option>	    
+		<option value="correlation">Correlation</option>	    
+	</param>
+	<param name="rowAgglomerationMethod" type="select"  label="Row Clustering Method" help="Choices:  Average Linkage, Complete Linkage,  Single Linkage, 'Ward', 'Mcquitty', 'Median', or 'Centroid'.">
+		<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>	    
+		<option value="centroid">Centroid</option>	    
+	</param>
+            <param name="rowDendroCut" type="select" label="Create row categorical covariate bar based on number of top-level dendrogram clusters" >
+        		<option value="0" selected="true" >None</option>
+        		<option value="2" >2</option>
+        		<option value="3" >3</option>
+        		<option value="4" >4</option>
+        		<option value="5" >5</option>
+        		<option value="6" >6</option>
+        		<option value="7" >7</option>
+        		<option value="8" >8</option>
+        		<option value="9" >9</option>
+        		<option value="10" >10</option>
+            </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"/>
+  		    <param name="rowDendroCut" type="text" size="0" hidden="true"   value="0"/>
+        </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"/>
+ 		    <param name="rowDendroCut" type="text" size="0" hidden="true"    value="0"/>
+        </when>
+    </conditional>
+    <param name="rowDataType" type="select" label="Linkouts to row data type info" >
+        <option value="labels" selected="true" >None</option>
+        <option value="bio.probe.affymetrix" >Affymetrix Probe Id</option>
+        <option value="bio.cbioportal.sampleid" >cBioPortal sample Id</option>
+        <option value="bio.gene.entrez" >Gene Entrez Id</option>
+        <option value="bio.gene.hugo" >Gene HUGO symbol</option>
+        <option value="bio.go" >Gene Ontology (GO) Id</option>
+        <option value="bio.geo.acc" >GEO Accession Id</option>
+        <option value="bio.pathway.mdanderson" >MD Anderson pathway Id</option>
+        <option value="bio.mirna" >miRNA Id</option>
+        <option value="bio.pubmed.search" >Pubmed Search Term</option>
+        <option value="scholar" >Scholarly term</option>
+        <option value="bio.protein.uniprotid" >UniProt Id</option>
+    </param>    
+	<conditional name="d_cols">
+	<param name="columnOrderMethod" type="select" label="Column ordering method" help="Choices -- Hierarchical Clustering, Original Order, Random">
+		<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="Euclidean, Binary, Manhattan, Maximum, Canberra, Minkowski, or Correlation">
+		<option value="euclidean">Euclidean</option>
+		<option value="binary">Binary</option>
+		<option value="manhattan">Manhattan</option>
+		<option value="maximum">Maximum</option>
+		<option value="canberra">Canberra</option>	    
+		<option value="minkowski">Minkowski</option>	    
+		<option value="correlation">Correlation</option>	    
+	</param>
+	<param name="columnAgglomerationMethod" type="select"  label="Column Clustering Method" help="Choices:  Average Linkage, Complete Linkage,  Single Linkage, 'Ward', 'Mcquitty', 'Median', or 'Centroid'.">
+		<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>	    
+		<option value="centroid">Centroid</option>	    
+	</param>
+            <param name="colDendroCut" type="select" label="Create column categorical covariate bar based on number of top-level dendrogram clusters" >
+        		<option value="0" selected="true" >None</option>
+        		<option value="2" >2</option>
+        		<option value="3" >3</option>
+        		<option value="4" >4</option>
+        		<option value="5" >5</option>
+        		<option value="6" >6</option>
+        		<option value="7" >7</option>
+        		<option value="8" >8</option>
+        		<option value="9" >9</option>
+        		<option value="10" >10</option>
+            </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"/>
+		    <param name="colDendroCut" type="text" size="0"  hidden="true"   value="0"/>
+        </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"/>
+		    <param name="colDendroCut" type="text" size="0"  hidden="true"   value="0"/>
+        </when>
+    </conditional>
+    <param name="colDataType" type="select" label="Linkouts to column data type info" >
+        <option value="labels" selected="true" >None</option>
+        <option value="bio.probe.affymetrix" >Affymetrix Probe Id</option>
+        <option value="bio.cbioportal.sampleid" >cBioPortal sample Id</option>
+        <option value="bio.gene.entrez" >Gene Entrez Id</option>
+        <option value="bio.gene.hugo" >Gene HUGO symbol</option>
+        <option value="bio.go" >Gene Ontology (GO) Id</option>
+        <option value="bio.geo.acc" >GEO Accession Id</option>
+        <option value="bio.pathway.mdanderson" >MD Anderson pathway Id</option>
+        <option value="bio.mirna" >miRNA Id</option>
+        <option value="bio.pubmed.search" >Pubmed Search Term</option>
+        <option value="scholar" >Scholarly term</option>
+        <option value="bio.protein.uniprotid" >UniProt Id</option>
+    </param>    
+    <repeat name="operations" title="Covariate Bars">
+        <param name="class_name" size="20" type="text" value="" label="Axis Covariate Name">
+           <sanitizer invalid_char="_">
+              <valid initial="none">
+                <add preset="string.letters"/>
+                <add preset="string.digits"/>
+              </valid>
+              <mapping initial="none">
+              </mapping>
+           </sanitizer>
+        </param>
+        <param name="repeatinput" type="data" format="text" label="Axis Covariate File"/>
+	<param name="cat" type="select" label="Axis Covariate Type">
+	  <option value="row_categorical" >Row Categorical</option>
+	  <option value="row_continuous" >Row Continuous</option>
+	  <option value="column_categorical" >Column Categorical</option>
+	  <option value="column_continuous" >Column Continuous</option>
+	</param>
+    </repeat>       
+     <repeat name="hm_attribute" title="Heat Map Attributes">
+        <param name="attrbute_key" size="50" type="text" value="" label="Heat Map Attributes json pair-- key ">
+           <sanitizer invalid_char="_">
+              <valid initial="">
+                <add preset="string.letters"/>
+                <add preset="string.digits"/>
+              </valid>
+              <mapping initial="">
+              </mapping>
+           </sanitizer>
+        </param>
+        <param name="attrbute_value" size="50" type="text" label="Heat Map Attributes json pairs -- value ">
+           <sanitizer invalid_char="_">
+              <valid initial="">
+                <add preset="string.letters"/>
+                <add preset="string.digits"/>
+              </valid>
+              <mapping initial="">
+              </mapping>
+           </sanitizer>
+        </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>