michael watson (IAH-C) wrote:
Hi

 I can't use box() as I don't
want to draw a box round my entire plot, I just want to draw a box as
the background to certain subsets of the bars.

One idea. Edit the barplot.default function so it doesnt call plot.new.

 do:

 myBarplot = barplot.default

then edit the myBarplot function. Add an extra parameter to the argument list 'add', and make it False by default:

            cex.names = par("cex.axis"), inside = TRUE, plot = TRUE,
            axis.lty = 0, add=F, ...)

 then find plot.new and wrap it in a condition:

    if(!add)plot.new()

 Now try:

 tN <- table(Ni <- rpois(100, lambda=5))
 myBarplot(tN)
 rect(2,1,6.5,8.5)

- this puts the rectangle on top of the bars, which you dont want, so you call myBarplot with add=T so that plot.new isnt called and the barplot appears over the rectangle:

 myBarplot(tN,add=T)

works for me, if I understand your problem correctly!

Baz

______________________________________________
[EMAIL PROTECTED] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html

Reply via email to