GViz - successes and a few hopes
1
0
Entering edit mode
Malcolm Cook ★ 1.6k
@malcolm-cook-6293
Last seen 4 months ago
United States
Florian, I am trying to employ GViz in preparation of figures to accompany a manuscript in which we characterize the effect a protein knock-down has on a particular histone modification profile across selected genes. I find your vignette very well written and helpful in my aims. Is it possible to plot multiple bigwigs on a single track, with distinct colors and alpha blending. I am successfully using the streaming import on bigwig files to load histone occupancy profiles on demand. Great! I would like to be able to overplot two of these bigwigs on a single track, with distinct colors and alpha blending. is there a backdoor way of accomplishing this? You documentation says that passing add=TRUE to plotTracks is needed to add the plot to existing canvas without re-initializing. I am writing multiple .png files in an apply, and find that without add=TRUE the chromosome that I am passing i successive calls is not being respected. So, in my hands, add=TRUE is required even though there is no issue of reinitializing or not. It appears that shape = 'smallArrow' is not respected by GeneRegionTrack and rect is used regardless. Finally, are there any ways to annotate tracks further with text, shaded boxes, horizontal/vertical lines? Thanks for a very clear vignette with lots of great examples. ~ malcolm_cook at stowers.org / Shilatifard Lab / Compuational Biology PS Is there a preferred way for hearing issues like this, or is email to bioc list the best for you?
annotate Gviz annotate Gviz • 1.7k views
ADD COMMENT
0
Entering edit mode
@florianhahnenovartiscom-3784
Last seen 6.2 years ago
Switzerland
Hi Malcolm, good to hear that Gviz is useful for you. See below for more. On 8/4/13 10:53 AM, "Cook, Malcolm" <mec at="" stowers.org=""> wrote: >Florian, > >I am trying to employ GViz in preparation of figures to accompany a >manuscript in which we characterize the effect a protein knock-down has >on a particular histone modification profile across selected genes. > >I find your vignette very well written and helpful in my aims. > >Is it possible to plot multiple bigwigs on a single track, with distinct >colors and alpha blending. I am successfully using the streaming import >on bigwig files to load histone occupancy profiles on demand. Great! Currently there isn't. What is happening behind the scenes for a bigwig file is that the necessary data for the requested genomic region is extracted and the results are turned into a DataTrack object. From this point on, the generic DataTrack plotting method takes over. While DataTrack objects do support multiple samples as well as the use of alpha blending, the problem really is that bigwig files can only contain data for a single sample. This is the only reason why we have this one file <-> one track limitation. > >I would like to be able to overplot two of these bigwigs on a single >track, with distinct colors and alpha blending. is there a backdoor way >of accomplishing this? Of course you could skip the automatic part that streams the bigwig data directly into a DataTrack and rebuild this part according to you own needs. All it takes is wrapper function that takes in the plotting coordinates and maybe a list of bigwig files that you want to merge. This function would than dynamically extract the data from the file, build a single DataTrack object containing multiple samples and finally plot this object using plotTracks. Obviously this would involve a bit of work but it shouldn't be too bad. One thing to keep in mind is that a multi sample DataTrack can only define a single set of coordinates, which may not be the case in your different bigwig files. So you may need to do a bit of interpolation, or take the union of all coordinates from all bigwig files. > >You documentation says that passing add=TRUE to plotTracks is needed to >add the plot to existing canvas without re-initializing. I am writing >multiple .png files in an apply, and find that without add=TRUE the >chromosome that I am passing i successive calls is not being respected. >So, in my hands, add=TRUE is required even though there is no issue of >reinitializing or not. I am afraid I can't follow you on this one. Maybe a short reproducible code example would help. I assume that you are calling plotTracks in each iteration of your apply function, together with the opening and closing of a fresh png device. In this case it should't really matter whether you use add=true or add=false. The only purpose of this parameter is to skip calling the grid equivalent of plot.new() before starting the actual plotting operation. This should have no effect at all on the selected chromosome. maybe an example will prove me wrong :-) > >It appears that shape = 'smallArrow' is not respected by GeneRegionTrack >and rect is used regardless. I can't reproduce this on my end. As a matter of fact, the default shape for this class is smallArrow, and I see this respected for instance when running the examples from the class' man page. Maybe the strand information of your object is all '*'? In this cases there will be no directional informations, alas, no arrows. Or did you set the stacking to 'dense'? This may also cause the directional information to be lost when several elements have to be merged. Again, a reproducible example would help. > >Finally, are there any ways to annotate tracks further with text, shaded >boxes, horizontal/vertical lines? You can do horizontal lines using the 'baseline' parameter, at least for DataTrack objects. All other annotations are currently not supported, but very high up on my to do list. > >Thanks for a very clear vignette with lots of great examples. > >~ malcolm_cook at stowers.org / Shilatifard Lab / Compuational Biology > > >PS Is there a preferred way for hearing issues like this, or is email to >bioc list the best for you?
ADD COMMENT
0
Entering edit mode
Florian, Thanks for the detailed reply. After a bit more wrangling with both GViz and ggbio I ultimately found that ggbio was able to meet all my needs. Again, I found your design and documentation clear and consistent. It was a pleasure to learn your package and I am likely to use it again. Best, Malcolm >Hi Malcolm, >good to hear that Gviz is useful for you. See below for more. > >On 8/4/13 10:53 AM, "Cook, Malcolm" <mec at="" stowers.org=""> wrote: > >>Florian, >> >>I am trying to employ GViz in preparation of figures to accompany a >>manuscript in which we characterize the effect a protein knock-down has >>on a particular histone modification profile across selected genes. >> >>I find your vignette very well written and helpful in my aims. >> >>Is it possible to plot multiple bigwigs on a single track, with distinct >>colors and alpha blending. I am successfully using the streaming import >>on bigwig files to load histone occupancy profiles on demand. Great! > >Currently there isn't. What is happening behind the scenes for a bigwig >file is that the necessary data for the requested genomic region is >extracted and the results are turned into a DataTrack object. From this >point on, the generic DataTrack plotting method takes over. While >DataTrack objects do support multiple samples as well as the use of alpha >blending, the problem really is that bigwig files can only contain data >for a single sample. This is the only reason why we have this one file <-> >one track limitation. > >> >>I would like to be able to overplot two of these bigwigs on a single >>track, with distinct colors and alpha blending. is there a backdoor way >>of accomplishing this? > >Of course you could skip the automatic part that streams the bigwig data >directly into a DataTrack and rebuild this part according to you own >needs. All it takes is wrapper function that takes in the plotting >coordinates and maybe a list of bigwig files that you want to merge. This >function would than dynamically extract the data from the file, build a >single DataTrack object containing multiple samples and finally plot this >object using plotTracks. Obviously this would involve a bit of work but it >shouldn't be too bad. One thing to keep in mind is that a multi sample >DataTrack can only define a single set of coordinates, which may not be >the case in your different bigwig files. So you may need to do a bit of >interpolation, or take the union of all coordinates from all bigwig files. > > >> >>You documentation says that passing add=TRUE to plotTracks is needed to >>add the plot to existing canvas without re-initializing. I am writing >>multiple .png files in an apply, and find that without add=TRUE the >>chromosome that I am passing i successive calls is not being respected. >>So, in my hands, add=TRUE is required even though there is no issue of >>reinitializing or not. > >I am afraid I can't follow you on this one. Maybe a short reproducible >code example would help. I assume that you are calling plotTracks in each >iteration of your apply function, together with the opening and closing of >a fresh png device. In this case it should't really matter whether you use >add=true or add=false. The only purpose of this parameter is to skip >calling the grid equivalent of plot.new() before starting the actual >plotting operation. This should have no effect at all on the selected >chromosome. maybe an example will prove me wrong :-) > >> >>It appears that shape = 'smallArrow' is not respected by GeneRegionTrack >>and rect is used regardless. > >I can't reproduce this on my end. As a matter of fact, the default shape >for this class is smallArrow, and I see this respected for instance when >running the examples from the class' man page. Maybe the strand >information of your object is all '*'? In this cases there will be no >directional informations, alas, no arrows. Or did you set the stacking to >'dense'? This may also cause the directional information to be lost when >several elements have to be merged. Again, a reproducible example would >help. > >> >>Finally, are there any ways to annotate tracks further with text, shaded >>boxes, horizontal/vertical lines? > >You can do horizontal lines using the 'baseline' parameter, at least for >DataTrack objects. All other annotations are currently not supported, but >very high up on my to do list. > >> >>Thanks for a very clear vignette with lots of great examples. >> >>~ malcolm_cook at stowers.org / Shilatifard Lab / Compuational Biology >> >> >>PS Is there a preferred way for hearing issues like this, or is email to >>bioc list the best for you?
ADD REPLY

Login before adding your answer.

Traffic: 626 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