Skip to content

Conversation

@bencap
Copy link
Collaborator

@bencap bencap commented Dec 17, 2024

UI features for VariantEffect/mavedb-api#361.

  • Adds a CalibrationTable injectable element
  • Makes histogram shaded regions more generic
  • Adds first-class logic for calibration and range formatting
  • Adds CalibrationTable to Histogram display
  • Eliminates score range hardcoding

- Makes histogram shaded regions more generic
- Adds first-class logic for calibration and range formatting
- Adds CalibrationTable to Histogram display
- Eliminates score range hardcoding
@bencap bencap added type: feature New feature workstream: pillar Task relates to pillar project app: frontend Task implementation touches the frontend labels Dec 17, 2024
@bencap bencap requested a review from jstone-dev December 17, 2024 20:19
@bencap bencap linked an issue Dec 17, 2024 that may be closed by this pull request
Copy link
Collaborator

@jstone-dev jstone-dev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I loaded Dan's sample calibrations for urn:mavedb:00000097-0-1, and I think the visualization looks good. My only comment is about how we present it.

It seems to me that the calibrations should be treated as an alternative to the score ranges for normal and abnormal phenotypes with their OddsPath values. When the user is configuring the score histogram, the choice of calibrations vs score ranges should be independent of the choice of histogram data. So it seems to me that the tabs across the top of the histogram, which govern the histogram data, should still be "Overall Distribution," "Clinical View," and "Custom." I don't think we ought to have "Calibrations" here.

Instead, I'd suggest just having something like what in this version is called "Shader Options," but maybe it should be called "Ranges" or something like that. There could be three options, depending what's available for a given score set:

  • Score ranges (meaning the score ranges provided by the investigator)
  • IGVF pillar project calibrations
  • None
    These might be supplemented by other calibrations in the future.

@jstone-dev
Copy link
Collaborator

I also wanted to ask about the utility of the new /score-sets/{urn}/calibration/data endpoint. It seems like we're not using this yet and will just populate calibrations behind the scenes when they're available. I don't think it's a problem to have that endpoint anyway, but just wanted to make sure I understood its use (or non-use) correctly.

@jstone-dev
Copy link
Collaborator

The latest changes look good to me. At some point we might need to revisit the default shader; if we had calibrations but no investigator-supplied ranges, we might want to default to the calibrations instead of no shader. But this seems unlikely to come up in practice.

@bencap bencap merged commit bd51148 into release-2024.5.0 Jan 24, 2025
@bencap bencap deleted the feature/bencap/contributor-provided-score-thresholds branch January 24, 2025 17:22
@bencap bencap mentioned this pull request Feb 25, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

app: frontend Task implementation touches the frontend type: feature New feature workstream: pillar Task relates to pillar project

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Score Thresholds from Contributors

3 participants