The changes seem reasonable to me but here is a workaround just in case (using builtin BOD and letters as examples):
i <- 0 setHook("plot.new", function() title(letters[i <<- i+1])) acf(BOD, main = "") setHook("plot.new", NULL, "replace") On Wed, May 28, 2008 at 12:08 PM, Андрей Парамонов <[EMAIL PROTECTED]> wrote: > 2008/5/27 Prof Brian Ripley <[EMAIL PROTECTED]>: >> That is the part that needs justification. I've never seen an example where >> that was the case (and you don't give one), and I use acf() a lot. The >> examples fit and their series names are not particularly short. >> >> Also, the user has the option to supply 'main' to plot.acf via '...', so why >> is that not sufficient? And you can even suppress the title by main="" and >> use title() for even more control. >> > > Here is an example with real-life series names and plot dimensions: > > data <- cbind('Число пожаров' = arima.sim(n = 100, list(ar = 0.5)), > 'Инд. Нестерова' = arima.sim(n = 100, list(ar = 0.1))) > > x11(width = 4.8, height = 4.2) > acf(data, mar = c(3, 3, 3, 1) + 0.1, cex.main = 1) > > I have tried to supply main argument to the acf function: > > acf(data, mar = c(3, 3, 3, 1) + 0.1, cex.main = 1, > main = matrix(c('Число пожаров', > 'Число пожаров &\nИнд. Нестерова', > 'Число пожаров &\nИнд. Нестерова', > 'Инд. Нестерова'), 2, 2)) > > but it doesn't work the desired way. Please see the implementation of > plot.acf. title function doesn't seem to play well with par(mfrow = ), > so it doesn't help, too. > > In principle, it's not *that* hard to implement a custom version of > multivariate acf plot, but the current version of plot.acf provides > some sweet features like y-axes alignment etc. Writing another > plot.acf will inevitably lead to massive code duplication, which is > bad. > > I have several ideas of how to tweak current plot.acf so it would > suffice my needs: > > 1) Add new main.sep argument (see the patch). > > 2) Let plot.acf recognize if main is a matrix and use its elements for > different plots, not just coerce it to vector and pass to every title. > > 3) Let plot.acf recognize if main is a function and call it with 2 > arguments (i-series name and j-series name) to compose captions. > > 1) seems to be the easiest for a user, 2) and 3) provide more freedom. > > Andrey Paramonov > ______________________________________________ > R-devel@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel > ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel