Bug when running Gviz::GenomeAxisTrack and highlighting region in axis
0
0
Entering edit mode
@alvaro-j-gonzalez-5813
Last seen 9.6 years ago
Thanks a lot, Florian. The 1.4.2 version of Gviz fixes the bug. Alvaro J. Gonzalez, PhD Computational Biology Memorial Sloan-Kettering Cancer Center New York, NY #### original message #### *Hi Alvaro, thanks for reporting this. I took a look at the code and found the issue. As you correctly pointed out this only happens when the range on the axis is very close to the borders, and not particularly wide. The problem is that for display reasons we need to add a little bit of padding to the margins of the range by gently clipping the extremes, which is usually not a big deal. In your example however the whole range on the axis is in the region that is being clipped, hence the error. The fix is simple, however you will not see this very small range at the extremes displayed anymore. The following example should make this a bit clearer: plotTracks(list(GenomeAxisTrack(range = IRanges(start = 1, end = 100)), AnnotationTrack(start=1, end=200, chr=1)), from =1, to = 50000, grid=T, v=50, col.grid="lightgray") You may notice that the axis only starts somewhere close to the end of the item in the AnnotationTrack. Alas, we can't draw any ranges in it. A fix will be available soon in both the devel and the release version once it has passed the build system (1.4.2 or 1.5.3) Cheers, Florian On 5/8/13 6:01 PM, "Alvaro J. Gonzalez" <alvaro.gonzalez4 at="" gmail.com="" <https:="" stat.ethz.ch="" mailman="" listinfo="" bioconductor="">> wrote: >Dear Gviz users/developers, > >The package is throwing an error when I try to highlight certain regions >in >the axis. The error is easily replicable: > >> plotTracks(GenomeAxisTrack(range = IRanges(start = 25000, end = 25100)), >from = 1, to = 50000) > >No problem with that. You get your genome axis from 1 to 50,000, and a >highlighted small region around the middle. > >The error is thrown when the highlighted small region is close to the >borders: > >Towards the left border: >> plotTracks(GenomeAxisTrack(range = IRanges(start = 1, end = 100)), from >>= >1, to = 50000) >Error in validObject(x) : > invalid class ³IRanges² object: 'widths(x)' cannot contain negative >values >> plotTracks(GenomeAxisTrack(range = IRanges(start = 101, end = 200)), >>from >= 1, to = 50000) >Error in validObject(x) : > invalid class ³IRanges² object: 'widths(x)' cannot contain negative >values > >Towards the right border: >> plotTracks(GenomeAxisTrack(range = IRanges(start = 49901, end = 50000)), >from = 1, to = 50000) >Error in validObject(x) : > invalid class ³IRanges² object: 'widths(x)' cannot contain negative >values >> plotTracks(GenomeAxisTrack(range = IRanges(start = 49801, end = 49900)), >from = 1, to = 50000) >Error in validObject(x) : > invalid class ³IRanges² object: 'widths(x)' cannot contain negative >values > >However, there's a moment when the highlighted region gets away enough >from >the border that the error is avoided: > >> plotTracks(GenomeAxisTrack(range = IRanges(start = 501, end = 600)), >>from >= 1, to = 50000) >> plotTracks(GenomeAxisTrack(range = IRanges(start = 49401, end = 49500)), >from = 1, to = 50000) > >Those two run like a breeze. > >Interestingly, one can also avoid the error by making the highlighted >range >wider: > >> plotTracks(GenomeAxisTrack(range = IRanges(start = 1, end = 1000)), from >= 1, to = 50000) >> plotTracks(GenomeAxisTrack(range = IRanges(start = 49001, end = 50000)), >from = 1, to = 50000) > >Not a problem with those. > >Ideas?* [[alternative HTML version deleted]]
Cancer Gviz Cancer Gviz • 854 views
ADD COMMENT

Login before adding your answer.

Traffic: 477 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6