diff tools/human_genome_variation/hilbertvis.xml @ 0:9071e359b9a3

Uploaded
author xuebing
date Fri, 09 Mar 2012 19:37:19 -0500
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tools/human_genome_variation/hilbertvis.xml	Fri Mar 09 19:37:19 2012 -0500
@@ -0,0 +1,117 @@
+<tool id="hgv_hilbertvis" name="HVIS" version="1.0.0">
+  <description>visualization of genomic data with the Hilbert curve</description>
+
+  <command interpreter="bash">
+    hilbertvis.sh $input $output $chromInfo "$chrom" $plot_value.score_col $level $mode
+    #if isinstance( $input.datatype, $__app__.datatypes_registry.get_datatype_by_extension('gff').__class__)
+      1 4 5 7
+    #else
+      ${input.metadata.chromCol} ${input.metadata.startCol} ${input.metadata.endCol} ${input.metadata.strandCol}
+    #end if
+  </command>
+
+  <inputs>
+    <param name="input" type="data" format="interval,gff" label="Dataset">
+      <validator type="unspecified_build"/>
+      <validator type="metadata" check="chromCol" message="chromCol missing"/>
+      <validator type="metadata" check="startCol" message="startCol missing"/>
+      <validator type="metadata" check="endCol" message="endCol missing"/>
+    </param>
+    <param name="chrom" type="text" label="Sequence to plot" help="Name of sequence (from the chromosome column in the dataset) to plot.  If left blank, the first sequence in the dataset will be plotted."/>
+    <conditional name="plot_value">
+      <param name="choice" type="select" label="Value to plot">
+        <option value="score" selected="true">Score column from dataset</option>
+        <option value="exist">Same value for each base (existence)</option>
+      </param>
+      <when value="score">
+        <param name="score_col" type="data_column" data_ref="input" numerical="true" label="Score column"/>
+      </when>
+      <when value="exist">
+        <param name="score_col" type="hidden" value="-1"/>
+      </when>
+    </conditional>
+    <param name="level" type="integer" value="9" label="Level" help="Level of Hilbert curve.  The resulting image will have 2&lt;sup&gt;level&lt;/sup&gt; by 2&lt;sup&gt;level&lt;/sup&gt; pixels.">
+      <validator type="in_range" min="1" message="The level must be an integer &gt;= 1."/>
+    </param>
+    <param name="mode" type="select" label="Summarization mode" help="Method used to determine a value for a point in the plot which covers multiple values in the input.">
+      <option value="max">Maximal value in each bin</option>
+      <option value="min">Minimal value in each bin</option>
+      <option value="absmax" selected="true">Maximal absolute value in each bin</option>
+      <option value="mean">Mean value of each bin</option>
+    </param>
+  </inputs>
+
+  <outputs>
+    <data name="output" format="pdf"/>
+  </outputs>
+
+  <tests>
+    <test>
+      <param name="input" value="hvis_mkar_chr22.tab"/>
+      <param name="chrom" value="chr22"/>
+      <param name="choice" value="score"/>
+      <param name="score_col" value="15"/>
+      <param name="level" value="9"/>
+      <param name="mode" value="absmax"/>
+      <output name="output" file="hvis_mkar_chr22.pdf" compare="sim_size" delta="7168"/>
+    </test>
+  </tests>
+
+  <help>
+**Dataset formats**
+
+The input format is interval_, and the output is an image in PDF format.
+(`Dataset missing?`_)
+
+.. _interval: ./static/formatHelp.html#interval
+.. _Dataset missing?: ./static/formatHelp.html
+
+-----
+
+**What it does**
+
+HilbertVis uses the Hilbert space-filling curve to visualize the structure of
+position-dependent data.  It maps the traditional one-dimensional line
+visualization onto a two-dimensional square.  For example, here is a diagram
+showing the path of a level-2 Hilbert curve.
+
+.. image:: ./static/images/hilbertvisDiagram.png
+
+The shade of each pixel represents the value for the corresponding bin of
+consecutive genomic positions, calculated according to the specified
+summarization mode.  The pixels are arranged so that bins that are close
+to each other on the data vector are represented by pixels that are close
+to each other in the plot.  In particular, adjacent bins are mapped to
+adjacent pixels.  Hence, dark spots in a figure represent a peak; the area
+of the spot in the two-dimensional plot is proportional to the width of the
+peak in the one-dimensional data, and the darkness of the spot corresponds to
+the height of the peak.
+
+The input file is in interval format, and typically contains a column with
+scores or other numbers, such as conservation scores, SNP density, the
+coverage of aligned reads from ChIP-Seq data, etc.
+
+Website: http://www.ebi.ac.uk/huber-srv/hilbert/
+
+-----
+
+**Examples**
+
+Here are some examples from the HilbertVis homepage, using ChIP-Seq data.
+
+.. image:: ./static/images/hilbertvis1.png
+
+-----
+
+.. image:: ./static/images/hilbertvis2.png
+
+-----
+
+**Reference**
+
+Anders S. (2009)
+Visualization of genomic data with the Hilbert curve.
+Bioinformatics. 25(10):1231-5. Epub 2009 Mar 17.
+
+  </help>
+</tool>