diff --git a/tools/odgi/build.xml b/tools/odgi/build.xml index 1399fd80439..28eb1bf0f5e 100644 --- a/tools/odgi/build.xml +++ b/tools/odgi/build.xml @@ -1,4 +1,4 @@ - + construct a dynamic succinct variation graph macros.xml @@ -6,13 +6,9 @@ '$gfa_output' +odgi build -g input.gfa -o '$odgi_output' $sort +#if $to_gfa +&& odgi view -i '$odgi_output' $to_gfa > '$gfa_output' #end if ]]> @@ -31,7 +27,7 @@ $sort - + @@ -39,11 +35,21 @@ $sort - diff --git a/tools/odgi/cover.xml b/tools/odgi/cover.xml new file mode 100644 index 00000000000..a348a817fc7 --- /dev/null +++ b/tools/odgi/cover.xml @@ -0,0 +1,76 @@ + + generate path covers for graph components + + macros.xml + + + + + + + + + + + + + + + + save_coverages + + + + + + + + + + + + + + + + + + + diff --git a/tools/odgi/depth.xml b/tools/odgi/depth.xml new file mode 100644 index 00000000000..894e1bf8c0b --- /dev/null +++ b/tools/odgi/depth.xml @@ -0,0 +1,104 @@ + + compute path depth statistics + + macros.xml + + + '$output' + ]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tools/odgi/draw.xml b/tools/odgi/draw.xml new file mode 100644 index 00000000000..07ac6ee58b5 --- /dev/null +++ b/tools/odgi/draw.xml @@ -0,0 +1,125 @@ + + draw previously-determined 2D layouts of the graph with diverse annotations + + macros.xml + + + + + + + + + + + + + + + + + + + + + + png + + + svg + + + tsv + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/tools/odgi/extract.xml b/tools/odgi/extract.xml new file mode 100644 index 00000000000..55eb82afa18 --- /dev/null +++ b/tools/odgi/extract.xml @@ -0,0 +1,113 @@ + + extract subgraphs or parts of a graph + + macros.xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/tools/odgi/layout.xml b/tools/odgi/layout.xml new file mode 100644 index 00000000000..8d460b42a27 --- /dev/null +++ b/tools/odgi/layout.xml @@ -0,0 +1,138 @@ + + compute 2D path-guided layouts + + macros.xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + tsv + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tools/odgi/macros.xml b/tools/odgi/macros.xml index 2295c9813ec..98397786124 100644 --- a/tools/odgi/macros.xml +++ b/tools/odgi/macros.xml @@ -1,15 +1,33 @@ - odgi - 0.3 - 1 + 0.9.3 + 0 + optimized dynamic genome/graph implementation (odgi) +---------------------------------------------------- + --threads=\${GALAXY_SLOTS:-1} + + + + + + + + + + + + + + + + - + 10.1093/bioinformatics/btac308 diff --git a/tools/odgi/normalize.xml b/tools/odgi/normalize.xml new file mode 100644 index 00000000000..50cf3f9c819 --- /dev/null +++ b/tools/odgi/normalize.xml @@ -0,0 +1,51 @@ + + normalize variation graph structure + + macros.xml + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tools/odgi/overlap.xml b/tools/odgi/overlap.xml new file mode 100644 index 00000000000..c7a7f60a635 --- /dev/null +++ b/tools/odgi/overlap.xml @@ -0,0 +1,62 @@ + + find paths overlapped by query paths + + macros.xml + + + '$output' + ]]> + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tools/odgi/paths.xml b/tools/odgi/paths.xml new file mode 100644 index 00000000000..86acc1f1393 --- /dev/null +++ b/tools/odgi/paths.xml @@ -0,0 +1,85 @@ + + inspect and report embedded paths + + macros.xml + + + '$output' + ]]> + + + + + + + + + + + + + + out + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tools/odgi/pav.xml b/tools/odgi/pav.xml new file mode 100644 index 00000000000..fcf177c41b6 --- /dev/null +++ b/tools/odgi/pav.xml @@ -0,0 +1,65 @@ + + compute presence/absence variant ratios + + macros.xml + + + '$output' + ]]> + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tools/odgi/position.xml b/tools/odgi/position.xml new file mode 100644 index 00000000000..cbbe84d0573 --- /dev/null +++ b/tools/odgi/position.xml @@ -0,0 +1,105 @@ + + translate coordinates between graph paths + + macros.xml + + + '$output' + ]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tools/odgi/similarity.xml b/tools/odgi/similarity.xml new file mode 100644 index 00000000000..04f6ec660fc --- /dev/null +++ b/tools/odgi/similarity.xml @@ -0,0 +1,57 @@ + + tabulate path similarities + + macros.xml + + + '$output' + ]]> + + + + + + + + + + + + + + + + + + + + + diff --git a/tools/odgi/sort.xml b/tools/odgi/sort.xml new file mode 100644 index 00000000000..7897df1c0db --- /dev/null +++ b/tools/odgi/sort.xml @@ -0,0 +1,90 @@ + + reorder graph nodes using odgi sort + + macros.xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tools/odgi/stats.xml b/tools/odgi/stats.xml new file mode 100644 index 00000000000..6dcdfe53e25 --- /dev/null +++ b/tools/odgi/stats.xml @@ -0,0 +1,94 @@ + + summarize variation graph metrics + + macros.xml + + + '$output' + ]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tools/odgi/test-data/cover_node_coverages.tabular b/tools/odgi/test-data/cover_node_coverages.tabular new file mode 100644 index 00000000000..202750ab956 --- /dev/null +++ b/tools/odgi/test-data/cover_node_coverages.tabular @@ -0,0 +1,2 @@ +component_id node_id depth +0 1 3 diff --git a/tools/odgi/test-data/cover_out.og b/tools/odgi/test-data/cover_out.og new file mode 100644 index 00000000000..a904cd961d4 Binary files /dev/null and b/tools/odgi/test-data/cover_out.og differ diff --git a/tools/odgi/test-data/depth_graph_table.tabular b/tools/odgi/test-data/depth_graph_table.tabular new file mode 100644 index 00000000000..c0bcb8069da --- /dev/null +++ b/tools/odgi/test-data/depth_graph_table.tabular @@ -0,0 +1,16 @@ +#node.id depth depth.uniq +1 1 1 +2 0 0 +3 1 1 +4 0 0 +5 1 1 +6 1 1 +7 0 0 +8 1 1 +9 1 1 +10 0 0 +11 1 1 +12 1 1 +13 0 0 +14 1 1 +15 1 1 diff --git a/tools/odgi/test-data/depth_path.tabular b/tools/odgi/test-data/depth_path.tabular new file mode 100644 index 00000000000..00beef04ca8 --- /dev/null +++ b/tools/odgi/test-data/depth_path.tabular @@ -0,0 +1 @@ +x 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 diff --git a/tools/odgi/test-data/depth_summarize.tabular b/tools/odgi/test-data/depth_summarize.tabular new file mode 100644 index 00000000000..75084cf6a4a --- /dev/null +++ b/tools/odgi/test-data/depth_summarize.tabular @@ -0,0 +1,2 @@ +#node.count graph.length step.count path.length mean.node.depth mean.graph.depth +15 55 10 50 0.666667 0.909091 diff --git a/tools/odgi/test-data/draw_color.png b/tools/odgi/test-data/draw_color.png new file mode 100644 index 00000000000..40d19e95056 Binary files /dev/null and b/tools/odgi/test-data/draw_color.png differ diff --git a/tools/odgi/test-data/draw_out.png b/tools/odgi/test-data/draw_out.png new file mode 100644 index 00000000000..f85a3130a80 Binary files /dev/null and b/tools/odgi/test-data/draw_out.png differ diff --git a/tools/odgi/test-data/draw_out.svg b/tools/odgi/test-data/draw_out.svg new file mode 100644 index 00000000000..db9044fb1b6 --- /dev/null +++ b/tools/odgi/test-data/draw_out.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/tools/odgi/test-data/draw_out.tabular b/tools/odgi/test-data/draw_out.tabular new file mode 100644 index 00000000000..f1769cb0b4a --- /dev/null +++ b/tools/odgi/test-data/draw_out.tabular @@ -0,0 +1,31 @@ +idx X Y +0 1000 1011.412470984964 +1 1007.998425367478 1011.22930506337 +2 1005.053348472049 1003.453030175744 +3 1006.053348472049 1018.734342107873 +4 1007.998425042978 1011.229305067688 +5 1008.997013283271 1011.175645140995 +6 1007.053348472049 1019.404779773979 +7 1008.053348472049 1008.331584099997 +8 1008.997013516463 1011.175645126192 +9 1009.996303448506 1011.13637823462 +10 1009.996303590017 1011.136378223301 +11 1012.990464431353 1010.945880071854 +12 1012.053348472049 1000 +13 1013.053348472049 1010.046535516353 +14 1012.990464377229 1010.945880081543 +15 1013.986699832024 1010.858476397321 +16 1013.986699891977 1010.85847638336 +17 1032.921902754171 1009.28393316226 +18 1033.053348472049 1003.708915560355 +19 1034.053348472049 1001.593992277521 +20 1032.921903374723 1009.283933119899 +21 1033.919676528749 1009.21693590164 +22 1033.919676623347 1009.216935893468 +23 1037.908895089846 1008.92054813574 +24 1039.053348472049 1005.084339605568 +25 1040.053348472049 1014.834152140687 +26 1037.908895068088 1008.920548127878 +27 1038.90529653593 1008.835425189788 +28 1038.905296364182 1008.835425232971 +29 1049.817614320641 1007.438758407213 diff --git a/tools/odgi/test-data/extract_inverse.og b/tools/odgi/test-data/extract_inverse.og new file mode 100644 index 00000000000..a99485d2b95 Binary files /dev/null and b/tools/odgi/test-data/extract_inverse.og differ diff --git a/tools/odgi/test-data/extract_node.og b/tools/odgi/test-data/extract_node.og new file mode 100644 index 00000000000..1a481c0c15c Binary files /dev/null and b/tools/odgi/test-data/extract_node.og differ diff --git a/tools/odgi/test-data/extract_range.og b/tools/odgi/test-data/extract_range.og new file mode 100644 index 00000000000..d5a4c843c13 Binary files /dev/null and b/tools/odgi/test-data/extract_range.og differ diff --git a/tools/odgi/test-data/keep_paths.txt b/tools/odgi/test-data/keep_paths.txt new file mode 100644 index 00000000000..587be6b4c3f --- /dev/null +++ b/tools/odgi/test-data/keep_paths.txt @@ -0,0 +1 @@ +x diff --git a/tools/odgi/test-data/node_list.txt b/tools/odgi/test-data/node_list.txt new file mode 100644 index 00000000000..01e79c32a8c --- /dev/null +++ b/tools/odgi/test-data/node_list.txt @@ -0,0 +1,3 @@ +1 +2 +3 diff --git a/tools/odgi/test-data/note5.gfa b/tools/odgi/test-data/note5.gfa index a11cb81896e..b46a5509f72 100644 --- a/tools/odgi/test-data/note5.gfa +++ b/tools/odgi/test-data/note5.gfa @@ -34,4 +34,4 @@ L 13 + 15 + 0M S 14 T L 14 + 15 + 0M S 15 CCAACTCTCTG -P x 1+,3+,5+,6+,8+,9+,11+,12+,14+,15+ *,*,*,*,*,*,*,*,* +P x 1+,3+,5+,6+,8+,9+,11+,12+,14+,15+ * diff --git a/tools/odgi/test-data/note5.png b/tools/odgi/test-data/note5.png index 32438145613..11c9d47a48c 100644 Binary files a/tools/odgi/test-data/note5.png and b/tools/odgi/test-data/note5.png differ diff --git a/tools/odgi/test-data/note5_out.og b/tools/odgi/test-data/note5_out.og index c4b5b4e66db..56a27766627 100644 Binary files a/tools/odgi/test-data/note5_out.og and b/tools/odgi/test-data/note5_out.og differ diff --git a/tools/odgi/test-data/t.bed b/tools/odgi/test-data/t.bed new file mode 100644 index 00000000000..b42d37bd8be --- /dev/null +++ b/tools/odgi/test-data/t.bed @@ -0,0 +1 @@ +x 0 50 diff --git a/tools/odgi/test-data/t.lay b/tools/odgi/test-data/t.lay new file mode 100644 index 00000000000..31d71b1e8bd Binary files /dev/null and b/tools/odgi/test-data/t.lay differ diff --git a/tools/odgi/test-data/t.og b/tools/odgi/test-data/t.og new file mode 100644 index 00000000000..56a27766627 Binary files /dev/null and b/tools/odgi/test-data/t.og differ diff --git a/tools/odgi/untangle.xml b/tools/odgi/untangle.xml new file mode 100644 index 00000000000..8a364e2c51c --- /dev/null +++ b/tools/odgi/untangle.xml @@ -0,0 +1,104 @@ + + project paths into reference-relative segments + + macros.xml + + + '$output' + ]]> + + + + + + + + + + + + + + + + + + + cut_points_output + + + + + + + + + + + + + + + + + diff --git a/tools/odgi/validate.xml b/tools/odgi/validate.xml new file mode 100644 index 00000000000..a5caba7fce5 --- /dev/null +++ b/tools/odgi/validate.xml @@ -0,0 +1,43 @@ + + validate odgi graph structure + + macros.xml + + + '$output' + ]]> + + + + + + + + + + + + + + + + + + + diff --git a/tools/odgi/view.xml b/tools/odgi/view.xml new file mode 100644 index 00000000000..b970a0aca25 --- /dev/null +++ b/tools/odgi/view.xml @@ -0,0 +1,56 @@ + + project odgi graph into other formats + + macros.xml + + + '$output' + ]]> + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tools/odgi/vis.xml b/tools/odgi/vis.xml index a5a227709c7..4fe24cec98d 100644 --- a/tools/odgi/vis.xml +++ b/tools/odgi/vis.xml @@ -1,4 +1,4 @@ - + variation graph visualizations macros.xml @@ -16,11 +16,13 @@ odgi viz #if str($path_x_padding) --path-x-padding=$path_x_padding #end if -$path_per_row -#if str($link_path_pieces): +#if $pack_paths + $pack_paths +#end if +#if str($link_path_pieces) --link-path-pieces=$link_path_pieces #end if ---threads=\${GALAXY_SLOTS:-1} +@THREADS@ ]]> @@ -30,8 +32,8 @@ $path_per_row - + @@ -47,11 +49,22 @@ $path_per_row -