Enhance gene leads tooltip: plot reference expression by tissue #364
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This shows a bar chart to assess typical tissue-specific gene expression more richly than before (#363).
With this data newly available in Gene Leads, researchers can easily answer questions about genes of interest, e.g.:
User interface
Here's how it looks!
Tissue_detail__Ideogram_2023-12-23.mov
Data architecture
This UI enhancement leverages a new-to-Ideogram technique for data retrieval. Like other gene leads data, this new data on median expression for up to 10 tissues per gene is stored in the service worker cache. However, newly, essentially all of the data is kept on disk and not read into memory. Instead, the Ideogram cache only reads a small "line-byte index" into memory.
The index maps each gene to the byte-offset of the line in the larger tissue-detail cache file on disk. Then, using
workbox-range-requests
, Ideogram reads only the needed byte range into memory. This is effectively the same as an HTTP range request.So speed is the same as before, but memory footprint is drastically smaller.