comparison kegg_maps_visualization.xml @ 0:9845dc9c7323 draft

planemo upload commit ad5f1c5a1a71d7fa2bc8bac408856aa80b0fc2a3
author proteore
date Tue, 18 Dec 2018 10:02:54 -0500
parents
children 6f389729a30b
comparison
equal deleted inserted replaced
-1:000000000000 0:9845dc9c7323
1 <tool id="kegg_maps_visualization" name="KEGG maps visualization" version="2018.12.18">
2 <description>of (differentially expressed) genes/proteins</description>
3 <requirements>
4 <requirement type="package" version="1.18.0">bioconductor-pathview</requirement>
5 <requirement type="package" version="1.18.0">bioconductor-keggrest</requirement>
6 </requirements>
7 <command detect_errors="exit_code"><![CDATA[
8 Rscript $__tool_directory__/kegg_maps_visualization.R
9 #if $input.ids == "text"
10 --id_list="$input.txt"
11 #else
12 --input="$input.file"
13 --id_column="$input.ncol"
14 --header="$input.header"
15 #end if
16 #if $species.pathways.pathways_id != "pathways_file"
17 --pathways_id="$species.pathways.pids"
18 #else
19 --pathways_input="$species.pathways.file"
20 --header2="$species.pathways.header2"
21 --pathway_col="$species.pathways.ncol2"
22 #end if
23 --id_type="$id_type"
24 --native_kegg="$native"
25
26
27 #if $input.ids=="file" and $input.foldchange.fc=="true"
28 --fold_change_data="$input.foldchange.fc"
29 --fold_change_col="$input.foldchange.fc_col"
30 #else
31 --fold_change_data="false"
32 #end if
33
34 --species=${species.ref_file}
35 --pathways_list=$__tool_directory__/${ filter( lambda x: str( x[0] ) == str( $species.ref_file ), $__app__.tool_data_tables['kegg_pathways_list_index'].get_fields() )[0][-1] }
36 --output="$text_output"
37
38 ]]></command>
39 <inputs>
40 <!--section name="pathways_section" title="Pathways" expanded="True"-->
41 <conditional name="species">
42 <param name="ref_file" type="select" label="Species" >
43 <option value="hsa">Human (Homo sapiens)</option>
44 <option value="mmu">Mouse (Mus musculus)</option>
45 <option value="rno">Rat (Rattus norvegicus)</option>
46 </param>
47 <when value="hsa">
48 <conditional name="pathways">
49 <param name="pathways_id" type="select" label="Enter your pathway(s)" help="Enter KEGG pathway name(s) or KEGG pathway id(s)">
50 <option value="pathways_names">KEGG pathway name(s)</option>
51 <option value="pathways_ids">KEGG pathway IDs</option>
52 <option value="pathways_file">KEGG pathway IDs from file</option>
53 </param>
54 <when value="pathways_names">
55 <param name="pids" type="select" label="Select pathway(s) (by clicking in the box)" multiple="true" help='You can select one or several pathway(s), you can write the beginning of your pathways to search using autocomplete'>
56 <options from_data_table="hsa_pathways">
57 <filter type="sort_by" column="1"/>
58 <validator type="no_options" message="No indexes are available for the selected input dataset"/>
59 </options>
60 </param>
61 </when>
62 <when value="pathways_ids">
63 <param name="pids" type="text" label="Copy/paste your pathway IDs" help='IDs must be separated by tab, space or carriage return into the form field, for example: "hsa00010 hsa05412"'>
64 <sanitizer invalid_char=''>
65 <valid initial="string.printable">
66 <remove value="&apos;"/>
67 </valid>
68 <mapping>
69 <add source="&#x20;" target=""/>
70 </mapping>
71 </sanitizer>
72 </param>
73 </when>
74 <when value="pathways_file">
75 <param name="file" type="data" format="txt,tabular" label="Select your file" help="Pathway id format : 'path:hsa00010' or 'hsa00010' or '00010'" />
76 <param name="header2" type="boolean" checked="true" truevalue="true" falsevalue="false" label="Does file contain header?" />
77 <param name="ncol2" type="text" value="c1" label="Column of pathways IDs" help='For example, fill in "c1" if it is the first column, "c2" if it is the second column and so on' />
78 </when>
79 </conditional>
80 </when>
81 <when value="mmu">
82 <conditional name="pathways">
83 <param name="pathways_id" type="select" label="Enter your pathway(s)" help="Enter KEGG pathway name(s) or KEGG pathway id(s)">
84 <option value="pathways_names">KEGG pathway name(s)</option>
85 <option value="pathways_ids">KEGG pathway IDs</option>
86 <option value="pathways_file">KEGG pathway IDs from file</option>
87 </param>
88 <when value="pathways_names">
89 <param name="pids" type="select" label="Select pathway(s)" multiple="true" help='You can select one or several pathway(s), you can write the beginning of your pathways to search using autocomplete'>
90 <options from_data_table="mmu_pathways">
91 <filter type="sort_by" column="1"/>
92 <validator type="no_options" message="No indexes are available for the selected input dataset"/>
93 </options>
94 </param>
95 </when>
96 <when value="pathways_ids">
97 <param name="pids" type="text" label="Copy/paste your pathway IDs" help='IDs must be separated by tab, space or carriage return into the form field, for example: "mmu00053 mmu00340"'>
98 <sanitizer invalid_char=''>
99 <valid initial="string.printable">
100 <remove value="&apos;"/>
101 </valid>
102 <mapping>
103 <add source="&#x20;" target=""/>
104 </mapping>
105 </sanitizer>
106 </param>
107 </when>
108 <when value="pathways_file">
109 <param name="file" type="data" format="txt,tabular" label="Enter your file" help="Pathway id format : 'path:mmu00053' or 'mmu00053' or '00053'" />
110 <param name="header2" type="boolean" checked="true" truevalue="true" falsevalue="false" label="Does file contain header?" />
111 <param name="ncol2" type="text" value="c1" label="Column of IDs" help='For example, fill in "c1" if it is the first column, "c2" if it is the second column and so on' />
112 </when>
113 </conditional>
114 </when>
115 <when value="rno">
116 <conditional name="pathways">
117 <param name="pathways_id" type="select" label="Enter your pathway(s) name/id" help="Enter KEGG pathway name(s) or KEGG pathway id(s)">
118 <option value="pathways_names">KEGG pathway name(s)</option>
119 <option value="pathways_ids">KEGG pathway IDs</option>
120 <option value="pathways_file">KEGG pathway IDs from file</option>
121 </param>
122 <when value="pathways_names">
123 <param name="pids" type="select" label="Select pathway(s)" multiple="true" help='You can select one or several pathway(s), you can write the beginning of your pathways to search using autocomplete'>
124 <options from_data_table="rno_pathways">
125 <filter type="sort_by" column="1"/>
126 <validator type="no_options" message="No indexes are available for the selected input dataset"/>
127 </options>
128 </param>
129 </when>
130 <when value="pathways_ids">
131 <param name="pids" type="text" label="Copy/paste your pathway IDs" help='IDs must be separated by tab, space or carriage return into the form field, for example: "hsa00010 hsa05412"'>
132 <sanitizer invalid_char=''>
133 <valid initial="string.printable">
134 <remove value="&apos;"/>
135 </valid>
136 <mapping>
137 <add source="&#x20;" target=""/>
138 </mapping>
139 </sanitizer>
140 </param>
141 </when>
142 <when value="pathways_file">
143 <param name="file" type="data" format="txt,tabular" label="Select your file" help="Pathway id format : 'path:hsa00010' or 'hsa00010' or '00010'" />
144 <param name="header2" type="boolean" checked="true" truevalue="true" falsevalue="false" label="Does file contain header?" />
145 <param name="ncol2" type="text" value="c1" label="Column of IDs" help='For example, fill in "c1" if it is the first column, "c2" if it is the second column and so on' />
146 </when>
147 </conditional>
148 </when>
149 </conditional>
150 <!--/section-->
151 <!--section name="genes_section" title="Genes/prot" expanded="True"-->
152 <param name="id_type" type="select" label="Select ID type for genes to map to the pathway(s):">
153 <option value="geneID" selected="true">Entrez Gene ID</option>
154 <option value="keggid">KEGG Genes ID</option>
155 <option value="uniprotID">UniProt Accession number</option>
156 </param>
157 <conditional name="input" >
158 <param name="ids" type="select" label="Enter your IDs" help="Copy/paste or ID from file (e.g. table)" >
159 <option value="text">Copy/paste your IDs</option>
160 <option value="file" selected="true">Input file containing your IDs</option>
161 </param>
162 <when value="text" >
163 <param name="txt" type="text" label="Copy/paste your IDs" help='IDs must be separated by tab, space or carriage return into the form field, for example: P31946 P62258' >
164 <sanitizer invalid_char=''>
165 <valid initial="string.printable">
166 <remove value="&apos;"/>
167 </valid>
168 <mapping initial="none">
169 <add source="&apos;" target="__sq__"/>
170 </mapping>
171 </sanitizer>
172 </param>
173 </when>
174 <when value="file" >
175 <param name="file" type="data" format="txt,tabular" label="Select your file" help="" />
176 <param name="header" type="boolean" checked="true" truevalue="true" falsevalue="false" label="Does file contain header?" />
177 <param name="ncol" type="text" value="c1" label="Column if IDs to map" help='For example, fill in "c1" if it is the first column, "c2" if it is the second column and so on' />
178 <conditional name="foldchange" >
179 <param name="fc" type="boolean" checked="false" truevalue="true" falsevalue="false" label="Map quantitative data on the pathway?"/>
180 <when value="true">
181 <param name="fc_col" type="text" label="Column(s) number of quantitative data (separated by ','. 3 columns max)" help="For example : c1,c3,c4"/>
182 </when>
183 <when value="false"/>
184 </conditional>
185 </when>
186 </conditional>
187 <!--/section-->
188 <param name="native" type="select" label="Graphical format">
189 <option value="true">KEGG map (.png)</option>
190 <option value="false">Graphviz layout engine (.pdf)</option>
191 </param>
192 </inputs>
193 <outputs>
194 <data name="text_output" format="tsv" label="KEGG maps visualization text output"/>
195 <collection type="list" label="KEGG maps visualization from ${input.file.name}" name="graphviz_output_from_file">
196 <filter>native=="false" and input["ids"] == "file"</filter>
197 <discover_datasets pattern="(?P&lt;designation&gt;.+\..*)\.pdf" ext="pdf" />
198 </collection>
199 <collection type="list" label="KEGG maps visualization from ${input.file.name}" name="kegg_graph_output_from_file">
200 <filter>native=="true" and input["ids"] == "file"</filter>
201 <discover_datasets pattern="(?P&lt;designation&gt;.+\..*)\.png" ext="png"/>
202 </collection>
203 <collection type="list" label="KEGG maps visualization" name="graphviz_output_from_list">
204 <filter>native=="false" and input["ids"] == "text"</filter>
205 <discover_datasets pattern="(?P&lt;designation&gt;.+\..*)\.pdf" ext="pdf" />
206 </collection>
207 <collection type="list" label="KEGG maps visualization" name="kegg_graph_output_from_list">
208 <filter>native=="true" and input["ids"] == "text"</filter>
209 <discover_datasets pattern="(?P&lt;designation&gt;.+\..*)\.png" ext="png" />
210 </collection>
211 </outputs>
212 <tests>
213 <!--test>
214 <conditional name="input">
215 <param name="ids" value="file"/>
216 <param name="file" value="Lacombe_et_al_2017_OK.txt"/>
217 <param name="header" value="true"/>
218 <param name="ncol" value="c1"/>
219 </conditional>
220 <conditional name="pathways">
221 <param name="pathways_id" value="pathways_ids"/>
222 <param name="pids" value="04514,05167,00010"/>
223 </conditional>
224 <param name="id_type" value="uniprotID"/>
225 <param name="species" value="hsa"/>
226 <param name="native" value="true"/>
227 <output name="kegg_from_file" file="hsa04514.pathview.png" compare="sim_size"/>
228 <output name="kegg_from_file" file="hsa05167.pathview.png" compare="sim_size"/>
229 <output name="kegg_from_file" file="hsa00010.pathview.png" compare="sim_size"/>
230 </test-->
231 </tests>
232 <help><![CDATA[
233
234 **Description**
235
236 This tool based on the Pathview R package, is set for pathway based data integration and visualization.
237
238 It maps and renders a wide variety of biological data on relevant KEGG pathway graphs. All users need is to supply their data and specify the target pathway. Pathview automatically downloads the pathway graph data, parses the data file, maps user data to the pathway, and render pathway graph with the mapped data.
239
240 **Input**
241
242 1. "Enter your pathway(s)": target KEGG Pathways to be specify can be set by:
243
244 - choosing from the KEGG pathways name list
245 - giving a list of KEGG pathway IDs (e.g.hsa00010) (copy/paste mode)
246 - selecting a list from a dataset (column) - for instance, output from the "KEGG pathways identification and coverage" tool can be used (1st column, c1)
247 2. "Select ID type for genes to map on the pathway(s)": Identifiers to map can be either a list of Entrez genes IDs, KEGG genes ID or Uniprot accession number. IDs to be mapped can be either provided by copy/paste or a file (tabular, tsv, txt) with a column containing the IDs.
248 3. "Map quantitative data on the pathway ?": Yes/No (default is No). Fold change values (up to three columns) from a dataset (same file as identifiers to map) can be graphically represented on the final figure (using a range of color representing the fold-change values).
249
250 Below is an example of an input file with identifiers (uniprot_AC) and fold_change values.
251
252 .. csv-table:: Simulated data
253 :header: "Uniprot_AC","Protein.name","Number_of_peptides","fc_values 1","fc_values 2","fc_values 3"
254
255 "P15924","Desmoplakin","69","0.172302292051025","-0.757435966487116","0.0411240398990759"
256 "P02538","Keratin, type II cytoskeletal 6A","53","-0.988842456122076","0.654626325100182","-0.219153396366064"
257 "P02768","Serum albumin","44","-0.983493243315454","0.113752002761474","-0.645886132600729"
258 "P08779","Keratin, type I cytoskeletal 16","29","0.552302597284443","-0.329045605110646","2.10616106806788"
259
260 |
261
262 .. class:: warningmark
263
264 If there's more than one ID per line in the specified column, it will be splitted resulting in one unique ID per line. For example this table:
265
266 .. csv-table:: Simulated data
267 :header: "Ensembl_Gene","UniProt.AC","UniProt.ID"
268
269 "ENSG00000136881","Q14032","BAAT_HUMAN"
270 "ENSG00000170099","P08185;G3V350;G3V4V7","CBG_HUMAN;G3V350_HUMAN;G3V4V7_HUMAN"
271 "ENSG00000244731","P0C0L4","CO4A_HUMAN"
272
273 |
274
275 will be converted as follow:
276
277 .. csv-table:: Simulated data
278 :header: "Ensembl_Gene","UniProt.AC","UniProt.ID"
279
280 "ENSG00000136881","Q14032","BAAT_HUMAN"
281 "ENSG00000170099","P08185","CBG_HUMAN;G3V350_HUMAN;G3V4V7_HUMAN"
282 "ENSG00000170099","G3V350","CBG_HUMAN;G3V350_HUMAN;G3V4V7_HUMAN"
283 "ENSG00000170099","G3V4V7","CBG_HUMAN;G3V350_HUMAN;G3V4V7_HUMAN"
284 "ENSG00000244731","P0C0L4","CO4A_HUMAN"
285
286 |
287
288 -----
289
290 **Output:**
291
292 - a **collection dataset** named 'KEGG maps visualization from <dataset>', one file (png or pdf) for each given pathway.
293
294 - a **summary text file** (.tsv) of the mapping(s) with the following columns
295 - **KEGG pathway ID**: KEGG pathway(s) used to map given genes/proteins ids
296 - **pathway name**: name(s) of KEGG pathway(s) used for mapping
297 - **nb of Uniprot_AC used** (only when Uniprot accession number is given): number of Uniprot accession number which will be converted to Entrez genes IDs
298 - **nb of Entrez gene ID used**: number of Entrez gene IDs used for mapping
299 - **nb of Entrez gene ID mapped**: number of Entrez gene IDs mapped on a given pathway
300 - **nb of Entrez gene ID in the pathway**: number total of Entrez gene IDs in a given pathway
301 - **ratio of Entrez gene ID mapped**: number of Entrez gene IDs mapped / number total of Entrez gene IDs
302 - **Entrez gene ID mapped**: list of mapped Entrez gene IDs
303 - **uniprot_AC mapped** (only when Uniprot accession number is given): list of Uniprot accession number corresponding to the mapped Entrez gene IDs
304
305 -----
306
307 .. class:: infomark
308
309 **Data source (release date)**
310
311 KEGG Pathways names list are from http://rest.kegg.jp/list/pathway/
312
313 User manual / Documentation: http://www.bioconductor.org/packages/release/bioc/html/pathview.html
314
315 -----
316
317 .. class:: infomark
318
319 **Authors**
320
321 Luo, Weijun, Brouwer, Cory (2013). “Pathview: an R/Bioconductor package for pathway-based data integration and visualization.” Bioinformatics, 29(14), 1830-1831. doi: 10.1093/bioinformatics/btt285.
322
323 -----
324
325 .. class:: infomark
326
327 **Galaxy integration**
328
329 David Christiany, Florence Combes, Yves Vandenbrouck - CEA, INSERM, CNRS, Grenoble-Alpes University, BIG Institute, FR
330
331 Sandra Dérozier, Olivier Rué, Christophe Caron, Valentin Loux - INRA, Paris-Saclay University, MAIAGE Unit, Migale Bioinformatics platform, FR
332
333 This work has been partially funded through the French National Agency for Research (ANR) IFB project.
334
335 Contact support@proteore.org for any questions or concerns about the Galaxy implementation of this tool.
336 ]]></help>
337 <citations>
338 <citation type="doi">10.1093/nar/gkx372</citation>
339 <citation type="bibtex">
340 @misc{renameTODO,
341 author = {Weijun Luo},
342 year = {2013},
343 title = {pathview},
344 url = {https://bioconductor.org/packages/release/bioc/html/pathview.html},
345 }</citation>
346 </citations>
347 </tool>