DiffBind has evolved since the original answer a couple of years ago, especially since version 3.0.
The default is now to compute the same normalization factors in all the cases your mention. Basically,
dba.normalize() is invoked by default in
dba.count(), and these values are used for plotting, retrieving the count matrix, and for running analyses.
The default normalization factors (based solely on library sizes) can be over-ridden by an explicit call to
dba.normalize(), and the updated normalized counts will be used for plotting and matrix retrieval.
The score used for plotting and count matrix retrieval can be changed from the normalized counts (
peaks=NULL and setting the
score parameter. The available score values, as outlined in the original question, have also been updated.
dba.analyze() will always use the computed normalization factors regardless of what the
score parameter is set to.
So, from version 3.0 onwards, you should be able to simply run
dba.count() and have consistent, normalized counts used for all plotting, retrieval, and analysis functions. If you change the normalization parameters using
dba.normalize(), this will be reflected everywhere as well.