hammerlab / pileup.js

Interactive in-browser track viewer
Apache License 2.0
274 stars 64 forks source link

Gene track shows genes at wrong locations #451

Open cwuensch opened 7 years ago

cwuensch commented 7 years ago

Working with Pileup.js, we observed, that the gene track shows the gene annotations at completely wrong genomic locations.

Here the steps to reproduce the issue: Your example page at http://www.hammerlab.org/pileup/ shows the TP53 gene at the location chr17: 7.512.445 - 7.531.643

According to the Ensemble website information, the correct location for TP53 would be: chr17: 7.565.097 - 7.590.868 (in GRCh37 coordinates)

When I use the genome visualization at http://www.biodalliance.org (where the gene track on your example page is loaded from), the TP53 gene is displayed at the (correct) location chr17: 7.565.097 - 7.590.856

What can be done to display genes at their correct position?

armish commented 7 years ago

Hi @cwuensch - thanks for catching this issue.

I was just looking at this and realized that this is actually not a pileup.js bug but a data issue: the BigBed file we have been using as part of our demo seems to have incorrect locations for genes and you are right: the coordinates that you see in other places are the correct ones. So this should be fixed by switching the data source for the gene track.

Just posting this as if I don't get to it soon, I don't want to you to be stuck with this issue.

cwuensch commented 7 years ago

Hi @armish I don't think this is correct. The BigBed file, you are using, gets directly loaded from http://www.biodalliance.org The Biodalliance Genome Browser uses the same BigBed file ressource and shows the genes at their correct location. So it must be either a bug in Pileup.js or an inconsistency in the data format.

armish commented 7 years ago

@cwuensch: Nope, looks like they have recently switched to another BigBed file (gencode.bb) for the visualization of genes:

$ curl -s "http://www.biodalliance.org/" |grep ".bb"
            uri: '//www.biodalliance.org/datasets/hg18ToHg19.bb',
                       bwgURI: '//www.biodalliance.org/datasets/gencode.bb',
                       bwgURI: '//www.biodalliance.org/datasets/encode/gm12878.ChromHMM.bb',
                              {type: 'bb-translation', style: {glyph: 'BOX', FGCOLOR: 'black', BGITEM: true, BGCOLOR: 'red', HEIGHT: 10, BUMP: true, ZINDEX: 20, id: 'style2'}}, 
                              {type: 'bb-transcript', style: {glyph: 'BOX', FGCOLOR: 'black', BGCOLOR: 'white', HEIGHT: 10, ZINDEX: 10, BUMP: true, LABEL: true, id: 'style3'}}]}

and this old ensGene.bb file causes pileup.js to show it at a different location:

$ bigBedToBed ensGene.bb /dev/stdout |grep "TP53$" |head -1
chr17   7512444 7531642 ENST00000269305 0   -   7513651 7520637 0   11  1289,107,74,137,110,113,184,279,22,102,223, 0,2207,5133,5299,5779,6457,6651,7592,7980,8119,18975,   ENSG00000141510 TP53

I am going to create a small BigBed file for the demo and stop using the file on the biodalliance server for better reproducibility.