I noticed a new vignette posted for DiffBind, which now includes an awesome option to plot data as a volcano plot. I would love to use this, but I cant seem to access this option in DiffBind even when updating the package.
Could you please advise the best way to import the dba.plotVolcano option?
The Volcano plot is a new feature that is currently only available in the development version, so if you are using the Bioconductor release (3.4) it is not available yet. It will be officially released in Bioconductor 3.5 as DiffBind 2.4 at the end of the month.
If you are on the official release but want to use the new plot now, I have tested the dev version and it can be installed alongside the current release. You can do this going to the development landing page for DiffBind:
and downloading one of the package options for DiffBind_2.3.12 (or later), then install it (using install.packages() or, in RStudio, the Install Packages option form the Tool menu. If you are on Windows or Mac you can download a binary; if you are Linux, you should use the Package Source tarball.
The initial implementation of Volcano plots is fairly basic, let me know if there are feature that would be useful.
The issue is the availability of a confidence statistic for the Y-axis. DiffBind only deals with contrasts comparing differential binding between two sample groups at a time. If you compare sample groups X and Y, you get confidence statistics (p-values,FDR) for each site, but you don't have them for X vs Z or Y vs Z unless you run those contrasts as well.
Thanks for the prompt response! When trying to install DiffBind_2.3.12 as you instructed, I get the following two error messages:
Error in fetch(key) :
lazy-load database '/Library/Frameworks/R.framework/Versions/3.3/Resources/library/DiffBind/help/DiffBind.rdb' is corrupt
Error in get(method, envir = home) :
lazy-load database '/Library/Frameworks/R.framework/Versions/3.3/Resources/library/DiffBind/R/DiffBind.rdb' is corrupt
In addition: Warning messages:
1: package ‘DiffBind’ was built under R version 3.4.0
2: In .registerS3method(fin[i, 1], fin[i, 2], fin[i, 3], fin[i, 4], :
restarting interrupted promise evaluation
3: In get(method, envir = home) :
restarting interrupted promise evaluation
4: In get(method, envir = home) : internal error -3 in R_decompress1
Error: package or namespace load failed for ‘DiffBind’
Is this failing because the new version of DiffBind was built using R 3.4.0 and im using 3.3.0?
Thanks again for this,
I've only tried installing from the source .tar.gz (it builds fine in R 3.3.0), so there may be an issue with mixing in a new binary on the old system. R can generally handle things if they are built in different versions, you just get a warning.
One thing to try is to make sure not to load DiffBind first -- you should start with a "clean" session. Installing the package when it is loaded can cause the .rdb file to become corrupt. I usually install from the command line:
Great thanks so much, ive got things working!
Ive noticed though that in figure 7 of the new DIffbind Vignette shows "significant differential bound sites shown in red". However when I look at the legend, it has the red values listed as FDR > 0.05, while the blue dots are < 0.05. Is it possible there is another red color on this plot that is not overlaid? The significant peaks should be in the population that is <0.05 right?
Last question...is it possible to make these plots interactive to be able to hover the cursor to get the peak ID?
Andrew, you are the first person besides me to use this feature. Thanks for noticing that I got the colors backwards!
I won't be adding the hover option in this release, but it is a good idea. The function now silently returns the "red" sites as a GRanges object if you assign it to a variable. I've also added an option to overlay the row index of the sites as labels on the volcano plot, so you can figure out what the top sites are. The color fix and the labelling feature should appear in the next day or two as DiffBind_2.3.13.
Hi Rory thanks for the 2.3.13 upload, everything looks great!
For the dba.Volcanoplots, is there a way to plot all of the differences between multiple samples? For example, when I upload data for samples X,Y, Z, set up a contrast and make a volcano plot, it looks like its plotting the differences between samples X and Y. Is there a way to visualize the differences between samples Y and Z in the sample plot? This seems relevant because im working with a time course of the same tissue. Or does there have to be a separate plot for each contrast?