view rarecurve.xml @ 7:30ac301ba3d6 draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ampvis2 commit d92935972ac18906154fadf42bd0c008e3c437e2
author iuc
date Fri, 25 Oct 2024 14:12:58 +0000
parents 2e69edaaa834
children
line wrap: on
line source

<tool id="ampvis2_rarecurve" name="ampvis2 rarefaction curve" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@" license="MIT">
    <description></description>
    <macros>
        <import>macros.xml</import>
    </macros>
    <expand macro="header"/>
    <command detect_errors="exit_code"><![CDATA[
        Rscript '$rscript'
    ]]></command>
    <configfiles>
        <configfile name="rscript"><![CDATA[
            library(ampvis2, quietly = TRUE)
            data <- readRDS("$data")
            plot <- amp_rarecurve(
                data,
                stepsize = $stepsize
                #if $color_by
                    , color_by = "$color_by",
                #end if
                #if $facet_by
                    , facet_by = "$facet_by",
                    #if $facet_scales
                        , facet_scales = "$facet_scales"
                    #end if
                #end if
            )
            
            @OUTPUT_TOKEN@
        ]]></configfile>
    </configfiles>
    <inputs>
        <expand macro="rds_metadata_input_macro"/>
        <!-- TODO if no metadata_list is given that the color/facet_by selects
            give a warnings in the logs:
            WARNI [galaxy.tools.parameters.dynamic_options] could not create dynamic options from_dataset: metadata_list not a data or collection paramete

            - introduce a conditional color_facet_cond wich optionally shows these options
              and make metadata_list required?
            - or use a filter + proper message instead of from_datatable ?  
            
            here and everywhere else -->
        <param argument="stepsize" type="integer" value="1000" min="1" label="Step size" help="Lower is prettier but takes more time to generate."/>
        <expand macro="metadata_select" argument="color_by" label="Color curves by"/>
        <expand macro="metadata_select_discrete" argument="facet_by" label="Facet curves by"/>
        <expand macro="facet_scales_macro" argument="facet_scales" help="Only relevant if for facet_by a value is selected"/>
        <expand macro="out_format_macro"/>
    </inputs>
    <outputs>
        <expand macro="out_macro"/>
    </outputs>
    <tests>
        <test>
            <param name="data" value="AalborgWWTPs.rds" ftype="ampvis2"/> 
            <output name="plot" value="AalborgWWTPs-rarecurve.pdf" ftype="pdf" compare="sim_size"/>
        </test>
        <test>
            <param name="data" value="AalborgWWTPs.rds" ftype="ampvis2"/> 
            <param name="metadata_list" value="AalborgWWTPs-metadata.list"/> 
            <param name="stepsize" value="100"/> 
            <param name="color_by" value="Plant"/> 
            <output name="plot" value="AalborgWWTPs-rarecurve-color.pdf" ftype="pdf" compare="sim_size"/>
        </test>
        <test>
            <param name="data" value="AalborgWWTPs.rds" ftype="ampvis2"/> 
            <param name="metadata_list" value="AalborgWWTPs-metadata.list"/> 
            <param name="stepsize" value="100"/> 
            <param name="facet_by" value="Plant"/> 
            <param name="facet_scales" value="fixed"/> 
            <output name="plot" value="AalborgWWTPs-rarecurve-facet.pdf" ftype="pdf" compare="sim_size"/>
        </test>
    </tests>
    <help><![CDATA[
What it does
============

Generates a rarefaction curve (number of reads vs number of observed OTUs) for each sample.
The plot can be colored or faceted (i.e. split into multiple panels) by metadata

The Galaxy tool calls the `amp_rarecurve
<https://kasperskytte.github.io/ampvis2/reference/amp_rarecurve.html>`_ function
of the ampvis2 package. 

Input
=====

@HELP_RDS_INPUT@

@HELP_METADATA_LIST_INPUT@

Output
======

Rarefaction curves in the chosen output format.

    ]]></help>
    <expand macro="citations"/>
</tool>