jamiewaese / ePlant

ePlant is a data visualization tool for integrating and exploring multiple levels of biological data.
MIT License
2 stars 1 forks source link

Rewrite heatmap #27

Closed yuzhenmi closed 10 years ago

yuzhenmi commented 10 years ago

To accommodate loading of genes by REST, instead of pre-loading them, the generation of heatmap should be rewritten to eliminate its dependence on pre-loading a complete list of genes. One approach is to host a gene density file with high resolution on the server. Lower-or-equal-resolution heatmaps can then be generated from the data of this file.

jamiewaese commented 10 years ago

Nice.

On 2013-10-14, at 12:30 PM, Hans Yu notifications@github.com wrote:

To accommodate loading of genes by REST, instead of pre-loading them, the generation of heatmap should be rewritten to eliminate its dependence on pre-loading a complete list of genes. One approach is to host a gene density file with high resolution on the server. Lower-or-equal-resolution heatmaps can then be generated from the data of this file.

— Reply to this email directly or view it on GitHub.

yuzhenmi commented 10 years ago

I finally manged to rewrite the heatmap. It works as we've discussed: queries the server for a gene density map, then the client draws the heatmap according to the density map. The gene density map is nullified when zoom is changed.

I used a similar coloring scheme as the eFP browser for the heatmap, with the color going from yellow (0 value) to red (max value). However, I applied a logarithmic transformation to the density data before computing the colors, so that very large outliers do not make the rest of the data seem smaller (this was the case for Chromosome 1, where one very large outlier causes the rest of the chromosome to misleadingly adopt a yellow color).

yuzhenmi commented 10 years ago

I think this needs some modification though. At high zoom levels, it takes a long time to retrieve the data because the density map is at high resolution and the data size is large. Perhaps it would be better to retrieve the density map for only the visible segment of the chromosome, and have the map nullified when the camera gets panned or zoomed.

jamiewaese commented 10 years ago

I don't know if we even need hi res data for this. Do you think it's necessary?

It looks like we only have two colours showing - red with a few hints of yellow. There's no orange or anything in between?

We ought to show a color scale -- for this and the other EFPs too. You're working on that, I assume?

On Dec 19, 2013, at 10:31 PM, Hans Yu notifications@github.com wrote:

I think this needs some modification though. At high zoom levels, it takes a long time to retrieve the data because the density map is at high resolution and the data size is large. Perhaps it would be better to retrieve the density map for only the visible segment of the chromosome, and have the map nullified when the camera gets panned or zoomed.

— Reply to this email directly or view it on GitHub.

yuzhenmi commented 10 years ago

Well, at low res, most pixels have 10+ genes, that's why they're all red... yellow is the centromere, which has 0.

High res will actually produce a lot more oranges. So I'd say the low res is not informative at all, which makes high res necessary imo.