0
|
1 <tool id="jbrowse2" name="JBrowse2" version="@TOOL_VERSION@+@WRAPPER_VERSION@" profile="22.05">
|
|
2 <description>genome browser</description>
|
|
3 <macros>
|
|
4 <import>macros.xml</import>
|
|
5 </macros>
|
|
6 <expand macro="edamInc"/>
|
|
7 <xrefs>
|
|
8 <xref type="bio.tools">jbrowse2</xref>
|
|
9 </xrefs>
|
|
10 <expand macro="requirements"/>
|
|
11 <version_command>python '${__tool_directory__}/jbrowse2.py' --version</version_command>
|
|
12 <command detect_errors="aggressive"><![CDATA[
|
|
13 mkdir -p '$output.files_path' &&
|
|
14 ## Copy the XML file into the directory, mostly for debugging
|
|
15 ## but nice if users want to reproduce locally
|
|
16 cp '$trackxml' '$output.files_path/galaxy.xml' &&
|
|
17
|
|
18 export JBROWSE_SOURCE_DIR=\$(dirname \$(which jbrowse))/../opt/jbrowse2 &&
|
|
19
|
|
20 ## Once that's done, we run the python script to handle the real work
|
|
21 python '$__tool_directory__/jbrowse2.py'
|
|
22
|
|
23 --jbrowse \${JBROWSE_SOURCE_DIR}
|
|
24 --standalone '$standalone'
|
|
25
|
|
26 --outdir '$output.files_path'
|
|
27 '$trackxml' &&
|
|
28
|
|
29 #if str($standalone) != "data":
|
|
30 cp '$output.files_path/index.html' '$output'
|
|
31 #else:
|
|
32 cp '$dummyIndex' '$output'
|
|
33 #end if
|
|
34
|
|
35 ## Ugly testing hack since I cannot get <extra_files> to test the files I want to test. Hmph.
|
|
36 #if str($uglyTestingHack) == "enabled":
|
|
37 && cp '$trackxml' '$output'
|
|
38 #end if
|
|
39 ]]></command>
|
|
40 <configfiles>
|
|
41 <configfile name="dummyIndex"><![CDATA[
|
|
42 <html>
|
|
43 <head>
|
|
44 </head>
|
|
45 <body>
|
4
|
46 <h1>JBrowse2 Data Directory</h1>
|
0
|
47 <p>
|
4
|
48 Hi! This is not a full JBrowse2 instance. JBrowse v0.4(+?)
|
0
|
49 started shipping with the ability to produce just the
|
|
50 "data" directory from a JBrowse instance, rather than a
|
|
51 complete, standalone instance. This was intended to be used
|
|
52 with the in-development Apollo integration, but may have other
|
|
53 uses as well.
|
|
54 </p>
|
|
55 </body>
|
|
56 </html>
|
|
57 ]]></configfile>
|
|
58 <configfile name="trackxml"><![CDATA[<?xml version="1.0"?>
|
|
59 <root>
|
|
60 <metadata>
|
|
61 <genomes>
|
|
62 #if str($reference_genome.genome_type_select) == "indexed":
|
|
63 <genome path="${reference_genome.genome.fields.path}">
|
|
64 <metadata>
|
|
65 <dataset id="${__app__.security.encode_id($dataset.id)}" hid="${dataset.hid}"
|
|
66 size="${dataset.get_size(nice_size=True)}"
|
|
67 edam_format="${dataset.datatype.edam_format}"
|
|
68 file_ext="${dataset.ext}" />
|
|
69 </metadata>
|
|
70 </genome>
|
|
71 #else
|
|
72 <genome path="$reference_genome.genome">
|
|
73 <metadata>
|
|
74 <dataset id="${__app__.security.encode_id($reference_genome.genome.id)}" hid="${reference_genome.genome.hid}"
|
|
75 size="${reference_genome.genome.get_size(nice_size=True)}"
|
|
76 edam_format="${reference_genome.genome.datatype.edam_format}"
|
|
77 file_ext="${reference_genome.genome.ext}"
|
|
78 dname="${reference_genome.genome.element_identifier}" />
|
|
79 <history id="${__app__.security.encode_id($reference_genome.genome.history_id)}"
|
|
80 #if $reference_genome.genome.history.user:
|
|
81 user_email="${reference_genome.genome.history.user.email}"
|
|
82 user_id="${reference_genome.genome.history.user_id}"
|
|
83 display_name="${reference_genome.genome.history.get_display_name()}"/>
|
|
84 #else
|
|
85 user_email="anonymous"
|
|
86 user_id="-1"
|
|
87 display_name="Unnamed History"
|
|
88 />
|
|
89 #end if
|
|
90 <metadata
|
|
91 #for (key, value) in $reference_genome.genome.get_metadata().items():
|
|
92 #if "_types" not in $key:
|
|
93 ${key}="${value}"
|
|
94 #end if
|
|
95 #end for
|
|
96 />
|
|
97 <tool
|
|
98 tool_id="${reference_genome.genome.creating_job.tool_id}"
|
|
99 tool_version="${reference_genome.genome.creating_job.tool_version}"
|
|
100 />
|
|
101 </metadata>
|
|
102 </genome>
|
|
103 #end if
|
|
104 </genomes>
|
|
105 <galaxyUrl>${__app__.config.galaxy_infrastructure_url}</galaxyUrl>
|
|
106 </metadata>
|
|
107 <tracks>
|
|
108 #for $tg in $track_groups:
|
|
109 #for $track in $tg.data_tracks:
|
|
110 <track cat="${tg.category}" format="${track.data_format.data_format_select}" >
|
|
111 #if $track.data_format.data_format_select != "rest" and $track.data_format.data_format_select != "sparql":
|
|
112 <files>
|
|
113 #for $dataset in $track.data_format.annotation:
|
|
114 <trackFile path="${dataset}" ext="${dataset.ext}" label="${dataset.element_identifier}">
|
|
115 <metadata>
|
|
116 <dataset id="${__app__.security.encode_id($dataset.id)}" hid="${dataset.hid}"
|
|
117 size="${dataset.get_size(nice_size=True)}"
|
|
118 edam_format="${dataset.datatype.edam_format}"
|
|
119 file_ext="${dataset.ext}" />
|
|
120 <history id="${__app__.security.encode_id($dataset.history_id)}"
|
|
121 #if $dataset.history.user:
|
|
122 user_email="${dataset.history.user.email}"
|
|
123 user_id="${dataset.history.user_id}"
|
|
124 display_name="${dataset.history.get_display_name()}"/>
|
|
125 #else
|
|
126 user_email="anonymous"
|
|
127 user_id="-1"
|
|
128 display_name="Unnamed History"/>
|
|
129 #end if
|
|
130 <metadata
|
|
131 #for (key, value) in $dataset.get_metadata().items():
|
|
132 #if "_types" not in $key and $value is not None and len(str($value)) < 5000:
|
|
133 ${key}="${value}"
|
|
134 #end if
|
|
135 #end for
|
|
136 />
|
|
137 <tool
|
|
138 tool_id="${dataset.creating_job.tool_id}"
|
|
139 tool_version="${dataset.creating_job.tool_version}"
|
|
140 />
|
|
141 </metadata>
|
|
142 </trackFile>
|
|
143 #end for
|
|
144 </files>
|
|
145 #end if
|
|
146
|
|
147 <options>
|
|
148 #if str($track.data_format.data_format_select) == "gene_calls" or str($track.data_format.data_format_select) == "blast" :
|
|
149 <style>
|
|
150 <className>${track.data_format.jbstyle.style_classname}</className>
|
|
151 <description>${track.data_format.jbstyle.style_description}</description>
|
|
152 <label>${track.data_format.jbstyle.style_label}</label>
|
|
153 <height>${track.data_format.jbstyle.style_height}</height>
|
|
154 <maxHeight>${track.data_format.jbstyle.max_height}</maxHeight>
|
|
155 </style>
|
|
156 #else if str($track.data_format.data_format_select) == "pileup":
|
|
157 <pileup>
|
|
158 <bam_indices>
|
|
159 #for $dataset in $track.data_format.annotation:
|
|
160 <bam_index>${dataset.metadata.bam_index}</bam_index>
|
|
161 #end for
|
|
162 </bam_indices>
|
|
163 <chunkSizeLimit>${track.data_format.chunkSizeLimit}</chunkSizeLimit>
|
|
164 </pileup>
|
|
165 #end if
|
|
166 #if str($track.data_format.data_format_select) == "blast":
|
|
167 <blast>
|
|
168 #if str($track.data_format.blast_parent) != "":
|
|
169 <parent>${track.data_format.blast_parent}</parent>
|
|
170 #end if
|
|
171 <protein>${track.data_format.is_protein}</protein>
|
|
172 <min_gap>${track.data_format.min_gap}</min_gap>
|
|
173 <index>${track.data_format.index}</index>
|
|
174 </blast>
|
|
175 #end if
|
|
176 </options>
|
|
177 </track>
|
|
178 #end for
|
|
179 #end for
|
|
180 </tracks>
|
|
181 <plugins>
|
|
182 </plugins>
|
|
183 </root>
|
|
184 ]]></configfile>
|
|
185 </configfiles>
|
|
186 <inputs>
|
|
187 <conditional name="reference_genome">
|
|
188 <param help="Built-in references" label="Reference genome to display" name="genome_type_select" type="select">
|
|
189 <option selected="True" value="indexed">Use a built-in genome</option>
|
|
190 <option value="history">Use a genome from history</option>
|
|
191 </param>
|
|
192 <when value="indexed">
|
|
193 <param
|
|
194 help="If your genome of interest is not listed, contact the Galaxy team"
|
|
195 label="Select a reference genome"
|
|
196 name="genome"
|
|
197 type="select">
|
|
198 <options from_data_table="all_fasta">
|
|
199 <filter column="2" type="sort_by"/>
|
|
200 <validator message="No genomes are available for the selected input dataset" type="no_options">
|
|
201 </validator>
|
|
202 </options>
|
|
203 </param>
|
|
204 </when>
|
|
205 <when value="history">
|
|
206 <param
|
|
207 format="fasta"
|
|
208 label="Select the reference genome"
|
|
209 name="genome"
|
|
210 type="data">
|
|
211 </param>
|
|
212 </when>
|
|
213 </conditional>
|
|
214
|
5
|
215 <param name="standalone" label="Include all reference and track data in the JBrowse2 object" type="select"
|
|
216 help="Default is efficient but will not work offline. Including reference sequences, tracks and indexes will allow standalone viewing, at the cost of copying and moving all data" >
|
|
217 <option value="complete">Complete: Choose ONLY if need to view offline, or if history cannot be published. WARNING: produces bloated downloads storing redundant copies of all data!
|
0
|
218 </option>
|
5
|
219 <option value="minimal" selected="true">Sufficient: Uses URLs for Galaxy data. Requires internet access and a published history to download, share and view remotely.
|
0
|
220 </option>
|
|
221 </param>
|
|
222
|
|
223 <repeat name="track_groups" title="Track Group">
|
|
224 <param label="Track Category"
|
|
225 name="category"
|
|
226 type="text"
|
|
227 value="Default"
|
|
228 help="Organise your tracks into Categories for a nicer end-user experience. You can use #date# and it will be replaced with the current date in 'yyyy-mm-dd' format, which is very useful for repeatedly updating a JBrowse instance when member databases / underlying tool versions are updated." optional="False">
|
|
229 </param>
|
|
230 <repeat name="data_tracks" title="Annotation Track">
|
|
231 <conditional name="data_format" label="Track Options">
|
|
232 <param type="select" label="Track Type" name="data_format_select">
|
|
233 <option value="blast">Blast XML</option>
|
|
234 <option value="gene_calls">GFF/GFF3/BED Features</option>
|
|
235 <option value="hic">HiC data (convert .cool with hicexplorer)</option>
|
|
236 <option value="pileup">BAM Pileups</option>
|
|
237 <option value="vcf">VCF SNPs</option>
|
|
238 <option value="wiggle">BigWig XY</option>
|
|
239 </param>
|
|
240 <when value="hic">
|
|
241 <expand macro="input_conditional" label="HiC Track Data" format="hic" help="Cool files must be converted first with hicexplorer" />
|
|
242 </when>
|
|
243 <when value="blast">
|
|
244 <expand macro="input_conditional" label="BlastXML Track Data" format="blastxml" />
|
|
245 <expand macro="track_styling"
|
|
246 classname="feature"
|
|
247 label="description"
|
|
248 description="Hit_titles"
|
|
249 height="600px"/>
|
|
250 <param label="Features used in Blast Search"
|
|
251 help="in GFF3. This is used so we know where to map features. E.g. where results of which CDS Protein32 match up to. The query IDs in your blast results should MATCH some feature IDs in your GFF3 file. This is an optional field and is most useful if using JBrowse to display protein blast results on a DNA genome. blastn results don't need this, blastp results on a protein sequence don't need this."
|
|
252 format="gff3"
|
|
253 name="blast_parent"
|
|
254 optional="true"
|
|
255 type="data"/>
|
|
256
|
|
257 <param label="Minimum Gap Size"
|
|
258 help="before a new match_part feature is created"
|
|
259 name="min_gap"
|
|
260 type="integer"
|
|
261 value="10"
|
|
262 min="2" />
|
|
263 <param label="Is this a protein blast search?"
|
|
264 type="boolean"
|
|
265 name="is_protein"
|
|
266 truevalue="true"
|
|
267 falsevalue="false" />
|
|
268
|
|
269 <param label="Index this track" name="index" type="boolean" checked="false" truevalue="true" falsevalue="false" />
|
|
270 </when>
|
|
271 <when value="vcf">
|
|
272 <expand macro="input_conditional" label="SNP Track Data" format="vcf" />
|
|
273 </when>
|
|
274 <when value="gene_calls">
|
|
275 <expand macro="input_conditional" label="GFF/GFF3/BED Track Data" format="gff,gff3,bed" />
|
|
276 <expand macro="track_styling"
|
|
277 classname="feature"
|
|
278 label="product,name,id"
|
|
279 description="note,description"
|
|
280 height="10px"/>
|
|
281 <conditional name="match_part" label="match/match_part data">
|
|
282 <param type="select" label="Match part" name="matchp">
|
|
283 <option value="false" selected="True">"No"</option>
|
|
284 <option value="true">"Yes"</option>
|
|
285 </param>
|
|
286 <when value="true">
|
|
287 <param label="Match Part Feature Type"
|
|
288 name="name"
|
|
289 type="text"
|
|
290 value="match"
|
|
291 help="Match_parts have several options for the parent feature type, such as cDNA_match, match, translated_nucleotide_match, etc. Please select the appropriate one here. You can leave empty to try autodetection (only works with CanvasFeatures track type)."
|
|
292 optional="True"/>
|
|
293 </when>
|
|
294 <when value="false" />
|
|
295 </conditional>
|
|
296 </when>
|
|
297 <when value="pileup">
|
|
298 <expand macro="input_conditional" label="BAM Track Data" format="bam" />
|
|
299 <param type="select" label="Autogenerate SNP Track"
|
|
300 help="Not recommended for deep coverage BAM files" name="autogen">
|
|
301 <option value="false" selected="True">"No"</option>
|
|
302 <option value="true">"Yes"</option>
|
|
303 </param>
|
|
304 <param label="Maximum size of BAM chunks"
|
|
305 name="chunkSizeLimit"
|
|
306 type="integer"
|
|
307 help="Maximum size in bytes of BAM chunks that the browser will try to deal with. When this is exceeded, most tracks will display 'Too much data' message."
|
|
308 value="5000000" />
|
|
309 </when>
|
|
310 <when value="wiggle">
|
|
311 <expand macro="input_conditional" label="BigWig Track Data" format="bigwig" />
|
|
312 </when>
|
|
313 </conditional>
|
|
314 </repeat>
|
|
315 </repeat>
|
|
316 <param type="hidden" name="uglyTestingHack" value="" />
|
|
317 </inputs>
|
|
318 <outputs>
|
5
|
319 <data format="html" name="output" label="JBrowse2 on $reference_genome.genome.element_identifier - $standalone"/>
|
0
|
320 </outputs>
|
|
321 <tests>
|
|
322 <test>
|
|
323 <param name="reference_genome|genome_type_select" value="history"/>
|
|
324 <param name="reference_genome|genome" value="merlin.fa"/>
|
|
325 <param name="standalone" value="minimal" />
|
|
326 <param name="uglyTestingHack" value="enabled" />
|
|
327 <output name="output">
|
|
328 <assert_contents>
|
|
329 <has_text text="genome path="></has_text>
|
|
330 <has_text text="dataset id="></has_text>
|
|
331 <has_text text="history id="></has_text>
|
|
332 <has_text text="metadata"></has_text>
|
|
333 <has_text text="tool_id"></has_text>
|
|
334 </assert_contents>
|
|
335 </output>
|
|
336 </test>
|
|
337 <test>
|
|
338 <param name="reference_genome|genome_type_select" value="history"/>
|
|
339 <param name="reference_genome|genome" value="merlin.fa"/>
|
|
340 <param name="standalone" value="minimal" />
|
|
341 <repeat name="track_groups">
|
|
342 <param name="category" value="Default" />
|
|
343 <repeat name="data_tracks">
|
|
344 <conditional name="data_format">
|
|
345 <param name="data_format_select" value="gene_calls"/>
|
|
346 <param name="annotation" value="bed/test-3.bed,bed/test-6.bed"/>
|
|
347 </conditional>
|
|
348 </repeat>
|
|
349 </repeat>
|
|
350 <param name="uglyTestingHack" value="enabled" />
|
|
351 <output name="output">
|
|
352 <assert_contents>
|
|
353 <has_text text="genome path="></has_text>
|
|
354 <has_text text="dataset id="></has_text>
|
|
355 <has_text text="history id="></has_text>
|
|
356 <has_text text="metadata"></has_text>
|
|
357 <has_text text="tool_id"></has_text>
|
|
358 <has_text text="ext="bed" label="test-3.bed""></has_text>
|
|
359 </assert_contents>
|
|
360 </output>
|
|
361 </test>
|
|
362 <test>
|
|
363 <conditional name="reference_genome">
|
|
364 <param name="genome_type_select" value="history"/>
|
|
365 <param name="genome" value="merlin.fa"/>
|
|
366 </conditional>
|
|
367 <param name="standalone" value="minimal" />
|
|
368 <repeat name="track_groups">
|
|
369 <param name="category" value="Auto Coloured" />
|
|
370 <repeat name="data_tracks">
|
|
371 <conditional name="data_format">
|
|
372 <param name="data_format_select" value="pileup"/>
|
|
373 <param name="annotation" value="bam/merlin-sample.bam"/>
|
|
374 </conditional>
|
|
375 </repeat>
|
|
376 </repeat>
|
|
377
|
|
378 <param name="uglyTestingHack" value="enabled" />
|
|
379 <output name="output">
|
|
380 <assert_contents>
|
|
381 <has_text text="merlin-sample.bam"/>
|
|
382 <has_text text="dname="merlin.fa""/>
|
|
383 <has_text text="bam_index"/>
|
|
384 </assert_contents>
|
|
385 </output>
|
|
386 </test>
|
|
387
|
|
388 <test>
|
|
389 <param name="reference_genome|genome_type_select" value="history"/>
|
|
390 <param name="reference_genome|genome" value="merlin.fa"/>
|
|
391 <param name="standalone" value="minimal" />
|
|
392 <param name="uglyTestingHack" value="enabled" />
|
|
393 <output name="output">
|
|
394 <assert_contents>
|
|
395 <has_text text="merlin.fa"/>
|
|
396 </assert_contents>
|
|
397 </output>
|
|
398 </test>
|
|
399
|
|
400 </tests>
|
|
401 <help><![CDATA[
|
|
402
|
|
403 JBrowse2-in-Galaxy
|
|
404 ==================
|
|
405
|
|
406 JBrowse2-in-Galaxy offers a highly configurable, workflow-compatible
|
|
407 alternative to JBrowse1-in-Galaxy and Trackster.
|
|
408
|
|
409 Compared to JBrowse1-in-Galaxy, there is no support for alternative codons for unusual genomes,
|
|
410 and detailed track styling is not yet implemented. Send code.
|
|
411 JBrowse1 development has now ceased in favour of JBrowse2.
|
|
412
|
|
413
|
|
414 Overview
|
|
415 --------
|
|
416
|
|
417 JBrowse is a fast, embeddable genome browser built completely with
|
|
418 JavaScript and HTML5.
|
|
419
|
|
420 The JBrowse-in-Galaxy (JiG) tool was written to help build complex
|
|
421 JBrowse installations straight from Galaxy, taking advantage of the
|
|
422 latest Galaxy features such as dataset collections, sections, and colour
|
|
423 pickers. It allows you to build up a JBrowse instance without worrying
|
|
424 about how to run the command line tools to format your data, and which
|
|
425 options need to be supplied and where. Additionally it comes with many
|
|
426 javascript functions to handle colouring of features which would be
|
|
427 nearly impossible to write without the assistance of this tool.
|
|
428
|
|
429 The JBrowse-in-Galaxy tool is maintained by `the Galaxy IUC
|
|
430 <https://github.com/galaxyproject/tools-iuc/issues>`__, who you can help you
|
|
431 with missing features or bugs in the tool.
|
|
432
|
|
433 Options
|
|
434 -------
|
|
435
|
|
436 The first option you encounter is the **Fasta Sequence(s)**. This option
|
|
437 now accepts multiple fasta files, allowing you to build JBrowse
|
|
438 instances that contain data for multiple genomes or chrosomomes
|
|
439 (generally known as "landmark features" in gff3 terminology.) Up to 30
|
|
440 will be shown from the dropdown selector within JBrowse, this is a known
|
|
441 issue.
|
|
442
|
|
443 **Track Groups** represent a set of tracks in a single category. These
|
|
444 can be used to let your users understand relationships between large
|
|
445 groups of tracks.
|
|
446
|
|
447 .. image:: sections.png
|
|
448
|
|
449 Annotation Tracks
|
|
450 -----------------
|
|
451
|
|
452 Within Track Groups, you have one or more **Annotation Tracks**. Each
|
|
453 Annotation Track is a groups of datasets which have similar styling.
|
|
454 This allows you to rapidly build up JBrowse instances without having to
|
|
455 configure tracks individually. A massive improvement over previous
|
|
456 versions. For example, if you have five different GFF3 files from
|
|
457 various gene callers that you wish to display, you can take advantage of
|
|
458 this feature to style all of them similarly.
|
|
459
|
|
460 There are a few different types of tracks supported, each with their own
|
|
461 set of options:
|
|
462
|
|
463 GFF3/BED
|
|
464 ~~~~~~~~
|
|
465
|
|
466 These are your standard feature tracks. They usually highlight genes,
|
|
467 mRNAs and other features of interest along a genomic region. The
|
|
468 underlying tool and this help documentation focus primarily on GFF3
|
|
469 data, and have not been tested extensively with other formats. Automatic
|
|
470 min/max detection will fail under BED datasets.
|
|
471
|
|
472 BAM Pileups
|
|
473 ~~~~~~~~~~~
|
|
474
|
|
475 We support BAM files and can automatically generate SNP tracks based on
|
|
476 that bam data.
|
|
477
|
|
478 .. image:: bam.png
|
|
479
|
|
480 This is *strongly discouraged* for high coverage density datasets.
|
|
481 Unfortunately there are no other configuration options exposed for bam
|
|
482 files.
|
|
483
|
|
484 BlastXML
|
|
485 ~~~~~~~~
|
|
486
|
|
487 .. image:: blast.png
|
|
488
|
|
489 JiG now supports both blastn and blastp datasets. JiG internally uses a
|
|
490 blastXML to gapped GFF3 tool to convert your blastxml datasets into a
|
|
491 format amenable to visualization in JBrowse. This tool is also
|
|
492 available separately from the IUC on the toolshed.
|
|
493
|
|
494 **Minimum Gap Size** reflects how long a gap must be before it becomes a
|
|
495 real gap in the processed gff3 file. In the picture above, various sizes
|
|
496 of gaps can be seen. If the minimum gap size was set much higher, say
|
|
497 100nt, many of the smaller gaps would disappear, and the features on
|
|
498 both sides would be merged into one, longer feature. This setting is
|
|
499 inversely proportional to runtime and output file size. *Do not set this
|
|
500 to a low value for large datasets*. By setting this number lower, you
|
|
501 will have extremely large outputs and extremely long runtimes. The
|
|
502 default was configured based off of the author's experience, but the
|
|
503 author only works on small viruses. It is *strongly* recommended that
|
|
504 you filter your blast results before display, e.g. picking out the top
|
|
505 10 hits or so.
|
|
506
|
|
507 **Protein blast search** option merely informs underlying tools that
|
|
508 they should adjust feature locations by 3x.
|
|
509
|
|
510 Bigwig XY
|
|
511 ~~~~~~~~~
|
|
512
|
|
513 .. image:: bigwig.png
|
|
514
|
|
515 **XYPlot**
|
|
516
|
|
517 BigWig tracks can be displayed as a "density" plot which is a continuous
|
|
518 line which varies in colour, or as an "XYplot." XYplots are preferable
|
|
519 for users to visually identify specific features in a bigwig track,
|
|
520 however density tracks are more visually compact.
|
|
521
|
|
522 VCFs/SNPs
|
|
523 ~~~~~~~~~
|
|
524
|
|
525 These tracks do not support any special configuration.
|
|
526
|
|
527 @ATTRIBUTION@
|
|
528 ]]></help>
|
|
529 <expand macro="citations"/>
|
|
530 </tool>
|