Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Select multiple independent LD reference variants #213

Open
abought opened this issue Nov 4, 2020 · 0 comments
Open

Select multiple independent LD reference variants #213

abought opened this issue Nov 4, 2020 · 0 comments

Comments

@abought
Copy link
Member

abought commented Nov 4, 2020

Goal

The original version of LocusZoom allowed users to select more than one LD reference SNP for plotting, and color the plot accordingly. (see example)

This feature can be especially useful in regions with multiple independent significant hits; it would be a natural extension as we refactor rendering to support larger zoom regions.

Blocking tasks

Daniel is currently working on some performance optimizations to LDServer handle larger datasets and more complex LD queries. In the current system, each reference variant represents a separate network request to the server, and rendering cannot begin until all requests are resolved. We should explore:

  • How many LD reference variants we want to support, and
  • The performance / format characteristics of various ways to query multiple reference variants over a wide-ish region.

Feature Requirements

  • Improve the existing LD rendering features to support more than one independent LD reference SNP and color scheme. (internal matching of variant to each individual LD panel, and selecting the closest match)
  • Improve coloring logic/ scale function to identify a color scheme based on the closest LD match (instead of choosing one color along a continuum, also must take into account that several separate gradients are in play)
  • Improve the legend to show color schemes for multi-LD plot
  • Identify UI best suited to selecting (and deselecting!) LD variants (see also Allow template string syntax to support "else" branch on if statements #215)
  • Identify a mechanism to reset "user driven" ref variants when a user navigates to a new region (current behavior is to persist plot.state.ldrefvar until overridden, even if this results in an LD query that makes no sense). Eg, region_changed event

Open questions

  • How can we make this feature more reusable? (key functionality is spread across tooltip links, LD Adapter, custom legends and scaling functions, etc, and handles edge cases of highlight configurable plot)
  • Much of this logic can probably be encapsulated in a toolbar button, but what happens if there is more than one assoc study panel on the same plot? Presumably, the button would appear on each panel as part of the "nth assoc layout" logic.
  • Choose appropriate color blind friendly base color schemes
  • Validate LD server performance for n variant queries
  • Allow scaling functions to color on more than one parameter, eg refID AND ldvalue, in a namespace-agnostic way
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant