view fits2bitmap.xml @ 1:c780d644a93a draft

planemo upload for repository https://github.com/esg-epfl-apc/tools-astro/tree/main/tools/astropytools commit fc50bfef893e657560ba05e00858f53a53fbe2f0
author astroteam
date Fri, 25 Apr 2025 08:39:14 +0000
parents cf608e2b1436
children 6b6dc2b5e52d
line wrap: on
line source

<tool id="astropy_fits2bitmap" name="astropy fits2bitmap" version="0.2.0+galaxy0" profile="21.05">
    <requirements>
        <requirement type="package" version="6.1.7">astropy</requirement>
        <requirement type="package" version="3.10.1">matplotlib</requirement>
    </requirements>
    <command detect_errors="exit_code"><![CDATA[
        #if $reverse_cmap:
            #set $cmap = $cmap + "_r"
        #else:
            #set $cmap = $cmap
        #end if
        fits2bitmap '$input_fits' --stretch '$stretch' --ext $hdu --cmap $cmap -o out.png
    ]]></command>
    <inputs>
        <param type="data" name="input_fits" format="fits" label="FITS file containing a sky image"/>
        <param type="integer" name="hdu"  value="0" min="0" label="Select input HDU number"/>
        <param type="select" name="stretch" label="Stretch image scale" help="Type of image scale stretching">
            <option value="linear">linear</option>
            <option value="sqrt">square root</option>
            <option value="power">power law</option>
            <option value="log" selected="true">logarithmic</option>
            <option value="asinh">asinh</option>
        </param>
        <param type="select" name="cmap" label="Color map" help="matplotlib color map">
            <option value="jet" selected="true">jet</option>
            <option value="Accent">Accent</option>
            <option value="Blues">Blues</option>
            <option value="BrBG">BrBG</option>
            <option value="BuGn">BuGn</option>
            <option value="BuPu">BuPu</option>
            <option value="CMRmap">CMRmap</option>
            <option value="Dark2">Dark2</option>
            <option value="GnBu">GnBu</option>
            <option value="Greens">Greens</option>
            <option value="Greys">Greys</option>
            <option value="OrRd">OrRd</option>
            <option value="Oranges">Oranges</option>
            <option value="PRGn">PRGn</option>
            <option value="Paired">Paired</option>
            <option value="Pastel1">Pastel1</option>
            <option value="Pastel2">Pastel2</option>
            <option value="PiYG">PiYG</option>
            <option value="PuBu">PuBu</option>
            <option value="PuBuGn">PuBuGn</option>
            <option value="PuOr">PuOr</option>
            <option value="PuRd">PuRd</option>
            <option value="Purples">Purples</option>
            <option value="RdBu">RdBu</option>
            <option value="RdGy">RdGy</option>
            <option value="RdPu">RdPu</option>
            <option value="RdYlBu">RdYlBu</option>
            <option value="RdYlGn">RdYlGn</option>
            <option value="Reds">Reds</option>
            <option value="Set1">Set1</option>
            <option value="Set2">Set2</option>
            <option value="Set3">Set3</option>
            <option value="Spectral">Spectral</option>
            <option value="Wistia">Wistia</option>
            <option value="YlGn">YlGn</option>
            <option value="YlGnBu">YlGnBu</option>
            <option value="YlOrBr">YlOrBr</option>
            <option value="YlOrRd">YlOrRd</option>
            <option value="afmhot">afmhot</option>
            <option value="autumn">autumn</option>
            <option value="binary">binary</option>
            <option value="bone">bone</option>
            <option value="brg">brg</option>
            <option value="bwr">bwr</option>
            <option value="cool">cool</option>
            <option value="coolwarm">coolwarm</option>
            <option value="copper">copper</option>
            <option value="cubehelix">cubehelix</option>
            <option value="flag">flag</option>
            <option value="gist_earth">gist_earth</option>
            <option value="gist_gray">gist_gray</option>
            <option value="gist_heat">gist_heat</option>
            <option value="gist_ncar">gist_ncar</option>
            <option value="gist_rainbow">gist_rainbow</option>
            <option value="gist_stern">gist_stern</option>
            <option value="gist_yarg">gist_yarg</option>
            <option value="gnuplot">gnuplot</option>
            <option value="gnuplot2">gnuplot2</option>
            <option value="gray">gray</option>
            <option value="hot">hot</option>
            <option value="hsv">hsv</option>
            <option value="nipy_spectral">nipy_spectral</option>
            <option value="ocean">ocean</option>
            <option value="pink">pink</option>
            <option value="prism">prism</option>
            <option value="rainbow">rainbow</option>
            <option value="seismic">seismic</option>
            <option value="spring">spring</option>
            <option value="summer">summer</option>
            <option value="tab10">tab10</option>
            <option value="tab20">tab20</option>
            <option value="tab20b">tab20b</option>
            <option value="tab20c">tab20c</option>
            <option value="terrain">terrain</option>
            <option value="winter">winter</option>
        </param>
        <param type="boolean" name="reverse_cmap" checked="false" label="Reverse color map"/>
    </inputs>
    <outputs>
        <data name="output_png" format="png" from_work_dir="out.png" />
    </outputs>
    <tests>
        <test>
            <param name="input_fits" value="legacysurvey_image.fits"/>
            <param name="stretch" value="log"/>
            <param name="cmap" value="jet"/>
            <output name="output_png" file="legacysurvey_image.png"/>
        </test>
    </tests>
    <help><![CDATA[
Creates a bitmap file from a FITS sky image. 
The dynamic range of the FITS image is represented in the output bitmap image by applying "stretch" transformation.
Matplotlib colormaps are used to represent resulting intensity.

---------

**Example:**

Here is an example of converting SDSS LegacySurvey image of NGC4388:

.. image:: legacysurvey_image.png
   :width: 70 %
   :alt: legacysurvey_image.png


Note that you can also visualize FITS files directly in galaxy with interactive interface based on AladinLite.

This tool represents a script which is part of the Astropy package. See
`astropy help <https://docs.astropy.org/en/latest/visualization/index.html#scripts>`_
for further documentation.
    ]]></help>
    <citations>
        <citation type="doi">
            10.3847/1538-4357/ac7c74
        </citation>
    </citations>
</tool>