view ngsplot.xml @ 4:9652d08d8441 draft default tip

planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/ngsplot commit 73a8ef46dddb0a1b224720bcdfe46050ee9a1b8b
author artbio
date Tue, 26 Dec 2017 08:07:56 -0500
parents de27d4172d19
children
line wrap: on
line source

<tool id="ngsplot" name="ngsplot" version="0.3.1">
    <description>visualize NGS samples at functional genomic regions - beta</description>
    <requirements>
        <requirement type="package" version="1.17.1=r3.3.2_1">r-catools</requirement>
        <requirement type="package" version="1.3.4">r-domc</requirement>
        <requirement type="package" version="1.42.0">bioconductor-bsgenome</requirement>
<!--        <requirement type="package" version="1.26.1">bioconductor-rsamtools</requirement> -->
        <requirement type="package" version="1.32.0">bioconductor-shortread</requirement>
<!--        <requirement type="package" version="0.16.1=r3.2.2_0">bioconductor-biocgenerics</requirement> -->
    </requirements>

    <command><![CDATA[
export NGSPLOT="$__tool_directory__" &&
printenv &&
#if $numsamples.numsamples2 == "1":
   perl "$__tool_directory__"/runNGSplot.pl
   $genome_name
   $genomic_region_source_type.genomic_region
   $genomic_region_source_type.further_information
   $genomic_region_source_type.interval_size
   $genomic_region_source_type.flanking_region_option_source_type.flanking_region_option
   $genomic_region_source_type.flanking_region_option_source_type.flanking_region_size
   $numsamples.numsamples2
   $numsamples.usepair.usepair1

   $numsamples.usepair.bamfile1
   $numsamples.usepair.reffile1
   $numsamples.usepair.genelist1.usegenelist1
   $numsamples.usepair.genelist1.genelist1
   $numsamples.usepair.title1
   $numsamples.usepair.fraglen1
   $numsamples.usepair.linecol1

   $gene_database
   $randomly_sample
   $GO.gene_order
   $GO.KNC
   $GO.MIT
   $GO.NRS
   $chunk_size
   $quality_requirement
   $standard_error
   $radius_size
   $flooding_fraction
   $smooth_method
   $shaded_area
   ## $out_zip
   $out_avg_png  $out_hm_png &&
   tar -cf $out_tar data/
#end if

	]]></command>

<!-->
<-->

<inputs>
   <param  type="select" name="genome_name" label="Genome" help="Select Genome (only hg38 supported in this draft)">
        <option value="hg38">hg38</option>
        <option value="mm9">mm9</option>
   </param>
   <conditional name="genomic_region_source_type">
      <param type="select" name="genomic_region" label="Genomic region" help="">
         <option value="tss">TSS</option>
         <option value="tes">TES</option>
         <option value="genebody">Genebody</option>
         <option value="exon">Exon</option>
         <option value="cgi">CGI</option>
         <option value="bed">Customized bed file</option>
      </param>

      <when value="tss">
         <param type="select" name="further_information"  label="Further information: Not required for TSS">
            <option value="na">Not Required</option>
         </param>
         <param name="interval_size" type="select" label="Interval Region Size: Not required for TSS">
            <option value="na">Not Required</option>
         </param>
         <conditional name="flanking_region_option_source_type">
            <param type="select" name="flanking_region_option" label="Choose one method below to plot flanking region">
               <option value="flanking_region_size">Specify flanking region size in base pairs</option>
               <!--option value="flanking_floating_size">Specify fractional size with respect to interval size</option-->
            </param>
            <when value="flanking_region_size">
               <param name="flanking_region_size" size="30" type="text" value="2000" label="Flanking region size" help="default varies by type: TSS=2000;TES=2000;Genebody=2000;Exon=500;CGI=500;Bed=1000"/>
            </when>
            <!--when value="flanking_floating_size">
               <param name="flanking_region_size" size="30" type="text" value="0.33" label="Flanking region size as a fraction (or multiple) of interval size"/>
            </when-->
         </conditional>
      </when>
      <when value="tes">
         <param type="select" name="further_information"  label="Further information: Not required for TES">
            <option value="na">Not Required</option>
         </param>
         <param name="interval_size" type="select" label="Interval Region Size: Not required for TES">
            <option value="na">Not Required</option>
         </param>
         <conditional name="flanking_region_option_source_type">
            <param type="select" name="flanking_region_option" label="Choose one method below to plot flanking region">
               <option value="flanking_region_size">Specify flanking region size in base pairs</option>
               <!--option value="flanking_floating_size">Specify fractional size with respect to interval size</option-->
            </param>
            <when value="flanking_region_size">
               <param name="flanking_region_size" size="30" type="text" value="2000" label="Flanking region size" help="default varies by type: TSS=2000;TES=2000;Genebody=2000;Exon=500;CGI=500;Bed=1000"/>
            </when>
            <!--when value="flanking_floating_size">
               <param name="flanking_region_size" size="30" type="text" value="0.33" label="Flanking region size as a fraction (or multiple) of interval size"/>
            </when-->
         </conditional>
      </when>
      <when value="genebody">
         <param type="select" name="further_information"  label="You selected Genebody, further information can be provided for specific regions to plot">
            <option value="chipseq">ChIP-seq</option>
            <option value="rnaseq">RNA-seq</option>
         </param>
         <param name="interval_size" type="select" label="Interval Region Size" help="By default, Exon and CGI are small interval; Genebody and bed files are large interval. The X-axis of the plot is separated into 5 equal sized parts. If large interval is chosen, the middle 3 parts are for interval region and the 1 part on each side is for flanking region. If small interval is chosen, the middle 1 part is for interval region and the 2 parts on each side is for flanking region.">
            <option value="automatic">Default</option>
            <option value="0">Small</option>
            <option value="1">Large</option>
         </param>
         <conditional name="flanking_region_option_source_type">
            <param type="select" name="flanking_region_option" label="Choose one method below to plot flanking region">
               <option value="flanking_region_size">Specify flanking region size in base pairs</option>
               <option value="flanking_floating_size">Specify fractional size with respect to interval size</option>
            </param>
            <when value="flanking_region_size">
               <param name="flanking_region_size" size="30" type="text" value="2000" label="Flanking region size" help="default varies by type: TSS=2000;TES=2000;Genebody=2000;Exon=500;CGI=500;Bed=1000"/>
            </when>
            <when value="flanking_floating_size">
               <param name="flanking_region_size" size="30" type="text" value="0.33" label="Flanking region size as a fraction (or multiple) of interval size"/>
            </when>
         </conditional>
      </when>
      <when value="exon">
         <param type="select" name="further_information"  label="You selected Exon, further information can be provided for specific regions to plot">
            <option value="canonical">Canonical</option>
            <option value="variant">Variant</option>
            <option value="promoter">Promoter</option>
            <option value="polyA">polyA</option>
            <option value="altAcceptor">altAcceptor</option>
            <option value="altDonor">altDonor</option>
            <option value="altBoth">altBoth</option>
         </param>
         <param name="interval_size" type="select" label="Interval Region Size" help="By default, Exon and CGI are small interval; Genebody and bed files are large interval. The X-axis of the plot is separated into 5 equal sized parts. If large interval is chosen, the middle 3 parts are for interval region and the 1 part on each side is for flanking region. If small interval is chosen, the middle 1 part is for interval region and the 2 parts on each side is for flanking region.">
            <option value="automatic">Default</option>
            <option value="0">Small</option>
            <option value="1">Large</option>
         </param>
         <conditional name="flanking_region_option_source_type">
            <param type="select" name="flanking_region_option" label="Choose one method below to plot flanking region">
               <option value="flanking_region_size">Specify flanking region size in base pairs</option>
               <option value="flanking_floating_size">Specify fractional size with respect to interval size</option>
            </param>
            <when value="flanking_region_size">
               <param name="flanking_region_size" size="30" type="text" value="500" label="Flanking region size" help="default varies by type: TSS=2000;TES=2000;Genebody=2000;Exon=500;CGI=500;Bed=1000"/>
            </when>
            <when value="flanking_floating_size">
               <param name="flanking_region_size" size="30" type="text" value="0.33" label="Flanking region size as a fraction (or multiple) of interval size"/>
            </when>
         </conditional>
      </when>
      <when value="cgi">
         <param type="select" name="further_information"  label="You select CGI, further information can be provided for specific regions to plot">
            <option value="ProximalPromoter">ProximalPromoter</option>
            <option value="Genebody">GeneBody</option>
            <option value="Genedesert">GeneDesert</option>
            <option value="OtherIntergenic">OtherIntergenic</option>
            <option value="Pericentromere">Pericentromere</option>
            <option value="Subtelomere">Subtelomere</option>
            <option value="Promoter1k">Promoter1k</option>
            <option value="Promoter3k">Promoter3k</option>
         </param>
         <param name="interval_size" type="select" label="Interval Region Size" help="By default, Exon and CGI are small interval; Genebody and bed files are large interval. The X-axis of the plot is separated into 5 equal sized parts. If large interval is chosen, the middle 3 parts are for interval region and the 1 part on each side is for flanking region. If small interval is chosen, the middle 1 part is for interval region and the 2 parts on each side is for flanking region.">
            <option value="automatic">Default</option>
            <option value="0">Small</option>
            <option value="1">Large</option>
         </param>
         <conditional name="flanking_region_option_source_type">
            <param type="select" name="flanking_region_option" label="Choose one method below to plot flanking region">
               <option value="flanking_region_size">Specify flanking region size in base pairs</option>
               <option value="flanking_floating_size">Specify fractional size with respect to interval size</option>
            </param>
            <when value="flanking_region_size">
               <param name="flanking_region_size" size="30" type="text" value="500" label="Flanking region size" help="default varies by type: TSS=2000;TES=2000;Genebody=2000;Exon=500;CGI=500;Bed=1000"/>
            </when>
            <when value="flanking_floating_size">
               <param name="flanking_region_size" size="30" type="text" value="0.33" label="Flanking region size as a fraction (or multiple) of interval size"/>
            </when>
         </conditional>
      </when>
      <when value="bed">
         <param type="select" name="further_information"  label="Further information: Not required for bed input">
            <option value="na">Not Required</option>
         </param>
         <param name="interval_size" type="select" label="Interval Region Size" help="By default, Exon and CGI are small interval; Genebody and bed files are large interval. The X-axis of the plot is separated into 5 equal sized parts. If large interval is chosen, the middle 3 parts are for interval region and the 1 part on each side is for flanking region. If small interval is chosen, the middle 1 part is for interval region and the 2 parts on each side is for flanking region.">
            <option value="automatic">Default</option>
            <option value="0">Small</option>
            <option value="1">Large</option>
         </param>
         <conditional name="flanking_region_option_source_type">
            <param type="select" name="flanking_region_option" label="Choose one method below to plot flanking region">
               <option value="flanking_region_size">Specify flanking region size in base pairs</option>
               <option value="flanking_floating_size">Specify fractional size with respect to interval size</option>
            </param>
            <when value="flanking_region_size">
               <param name="flanking_region_size" size="30" type="text" value="1000" label="Flanking region size" help="default varies by type: TSS=2000;TES=2000;Genebody=2000;Exon=500;CGI=500;Bed=1000"/>
            </when>
            <when value="flanking_floating_size">
               <param name="flanking_region_size" size="30" type="text" value="0.33" label="Flanking region size as a fraction (or multiple) of interval size"/>
            </when>
         </conditional>
      </when>
   </conditional>


   <conditional name="numsamples">
      <param type="select" name="numsamples2" label="Number of samples to plot">
         <option value="1">1</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 value="1">
         <conditional name="usepair">
            <param type="select" name="usepair1" label="Use reference alignment?" help="Using a reference bam file will allow the plots to display log2 fold changes instead of read count intensities.">
               <option value="no">No</option>
               <option value="yes">Yes</option>
            </param>
            <when value="no">
               <!-- START: 1 sample, no refpairs, entry 1-->
               <param  type="data"  name="bamfile1" label="Sample 1: Input BAM file"/>
               <param  type="hidden"  name="reffile1" value="na"/>
               <conditional name="genelist1">
                  <param type="select" name="usegenelist1" label="Sample 1: Gene list">
                     <option value="no">Plot whole genome</option>
                     <option value="yes">Provide restricted gene list</option>
                  </param>
                  <when value="no">
                     <param type="hidden"  name="genelist1"  value="-1"/>
                  </when>
                  <when value="yes">
                     <param type="data"  name="genelist1"  label="Choose the uploaded gene list for plotting"/>
                  </when>
               </conditional>
               <param  type="text"  name="title1" value="plot1" label="Sample 1: Image title"/>
               <param  type="text"  name="fraglen1" value="150" label="Sample 1: Expected fragment length"/>
               <param  type="text"  name="linecol1" value="green" label="Sample 1: Line plot color"/>
               <!-- END: 1 sample, no refpairs, entry 1-->
            </when>
            <when value="yes">
               <!-- START: 1 sample, yes refpairs, entry 1-->
               <param  type="data"  name="bamfile1" label="Sample 1: Input BAM file"/>
               <param  type="data"  name="reffile1" label="Sample 1: Reference BAM file"/>
               <conditional name="genelist1">
                  <param type="select" name="usegenelist1" label="Sample 1: Gene list">
                     <option value="no">Plot whole genome</option>
                     <option value="yes">Provide restricted gene list</option>
                  </param>
                  <when value="no">
                     <param type="hidden"  name="genelist1"  value="-1"/>
                  </when>
                  <when value="yes">
                     <param type="data"  name="genelist1"  label="Choose the uploaded gene list for plotting"/>
                  </when>
               </conditional>
               <param  type="text"  name="title1" value="plot1" label="Sample 1: Image title"/>
               <param  type="text"  name="fraglen1" value="150" label="Sample 1: Expected fragment length"/>
               <param  type="text"  name="linecol1" value="green" label="Sample 1: Line plot color"/>
               <!-- END: 1 sample, yes refpairs, entry 1-->
            </when>
         </conditional>
      </when>
   </conditional>



   <param type="select" name="gene_database" label="Supported gene database: RefSeq, Ensembl">
      <option value="ensembl">Ensembl</option>
      <option value="refseq">RefSeq</option>
   </param>
   <param name="randomly_sample" size="10" type="text" value="1" label="Randomly sample the regions for plotting" help="This will randomly sample a portion of the whole genome or the gene lists. This option can be VERY useful if one just wants to get an overview in shorter time."/>
   <conditional name="GO">
      <param type="select" name="gene_order" label="Gene order algorithm">
         <option value="total">Overall enrichment of the 1st profile</option>
         <option value="hc">Hierarchical clustering</option>
         <option value="max">Peak value of the 1st profile</option>
         <option value="prod">Product of all profiles on the same region</option>
         <option value="diff">Difference between the 1st and 2nd profiles</option>
         <option value="km">K-means clustering</option>
         <option value="none">No ranking algorithm applied. Use order in gene list.</option>
      </param>
      <when value="km">
         <param type="text" name="KNC" value="5" label="K-means: Number of clusters" help=""/>
         <param type="text" name="MIT" value="20" label="K-means: Number of iterations" help=""/>
         <param type="text" name="NRS" value="30" label="K-means: Number of random starts" help="K-means is prone to local optima. Restarting it repeatedly may help to find a better solution."/>
      </when>
      <when value="total">
         <param type="hidden" name="KNC" value="NA" />
         <param type="hidden" name="MIT" value="NA" />
         <param type="hidden" name="NRS" value="NA" />
      </when>
      <when value="hc">
         <param type="hidden" name="KNC" value="NA" />
         <param type="hidden" name="MIT" value="NA" />
         <param type="hidden" name="NRS" value="NA" />
      </when>
      <when value="max">
         <param type="hidden" name="KNC" value="NA" />
         <param type="hidden" name="MIT" value="NA" />
         <param type="hidden" name="NRS" value="NA" />
      </when>
      <when value="prod">
         <param type="hidden" name="KNC" value="NA" />
         <param type="hidden" name="MIT" value="NA" />
         <param type="hidden" name="NRS" value="NA" />
      </when>
      <when value="diff">
         <param type="hidden" name="KNC" value="NA" />
         <param type="hidden" name="MIT" value="NA" />
         <param type="hidden" name="NRS" value="NA" />
      </when>
      <when value="none">
         <param type="hidden" name="KNC" value="NA" />
         <param type="hidden" name="MIT" value="NA" />
         <param type="hidden" name="NRS" value="NA" />
      </when>
   </conditional>
   <param name="chunk_size" size="10" type="text" value="100" label="Chunk size for loading genes in batch" help="This parameter controls the behavior of coverage calculation. A smaller value implies lower memory footprint but may increase processing time."/>
   <param name="quality_requirement" size="10" type="text" value="20" label="Mapping quality requirement" help="This is the Phred-scale mapping quality score. A score of 20 means an error rate of 1%."/>
   <param type="select" name="standard_error" label="Plot standard errors" help="Standard errors will be rendered as shaded area around each curve.">
      <option value="1">Yes</option>
      <option value="0">No</option>
   </param>

   <param name="radius_size" size="10" type="text" value="0" label="Fraction of extreme values to be trimmed on both ends" help="The fraction of extreme values that will be trimmed on both ends. Eg. 0.05 will remove 5% of extreme values."/>
   <param name="flooding_fraction" size="10" type="text" value="0.02" label="Heatmap flooding fraction" help="Default of 0.02 means that the minimum value is truncated at 2% and the maximum value is truncated at 98%. A higher fraction results in plots that have higher brightness but are less dynamic."/>
   <param type="select" name="smooth_method" label="Moving window width to smooth avg. profiles">
      <option value="1">No</option>
      <option value="3">Slightly</option>
      <option value="5">Somewhat</option>
      <option value="9">Quite</option>
      <option value="13">Super</option>
   </param>
   <param name="shaded_area" size="10" type="text" value="0" label="Opacity of shaded area under curve" help="Suggested value between 0 and 0.5."/>
<!--
-->
</inputs>

<help></help>
<outputs>
   <data format="pdf" name="out_avg_png" />
   <data format="pdf" name="out_hm_png" />
   <data format="tar" name="out_tar"/>
</outputs>
</tool>