chfi / gfaestus

GFA visualizer, GPU-accelerated using Vulkan

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

making core actions easy

ekg opened this issue · comments

Gfaestus is very good at loading large, complex variation graphs for whole human chromosomes. It also works very well on smaller subgraphs, where the odgi layout algorithm can be run longer to produce cleaner renderings.

It needs a lot of UI polish to be usable. Here are things that gfaestus is capable of, but for which the UI is very tricky:

  • coloring / highlighting / labeling annotations (regions, positions, genes) from GFF or BED
  • finding a position in a path
  • finding the position of a path at a given node
  • zooming into a particular node (by id or path position)
  • color overlays showing path depth and base content (e.g. node sequence hash)
  • color overlay showing annotation depth or numerical features given in annotations (e.g. the 4th column of a BED)

And here's a few that are nearly possible, but which would require a little work, but are essential to use:

  • subgraph selection and extraction (to GFA)
  • overlay (with an additional set of splines or segments) the approximate walk through the layout made by a given path, avoiding overplotting as much as possible so as to show the traversal of a path through a difficult region

There should be a menu of actions that provides GUIs that walk through the required steps to set these up. The amount of state that's kept around could be minimized. For instance, we may not need to many GFF or BED files into memory if we just want to take annotations from one and layer them on the graph. We can just read the file and store the required annotations and their positions on the layout.

Over time, we'll learn how to simplify the set of actions, and extend them. But focusing on these use cases should help us get to where the tool is solving current problems in our work.

We're still missing subgraph extraction! Otherwise this is somewhat done.

Headless mode.