Richard.Cotton wrote: > The rectangles being drawn extend higher than the top of the panel. (Your y > axis ranges from 0 to 50, but the bars go up to 100.) >
Thankyou - I can also make the bars on the lower panels vanish by tinkering with ylim. > In the top row of plots, depending upon the shape of your device window, the > bars can extend beyond the range of the device window. For some reason, > (take a look in panel.rect), when you specify alpha less than 1, this > prevents the bar being drawn. The problem lies deeper. I can demonstrate the same effect with raw grid calls (but cannot find a way into "grid.draw" to see what is going on): cols <- rainbow(2,alpha=0.5) library(grid) grid.newpage() pushViewport(plotViewport(c(5,4,2,2))) # draw viewport limits: grid.rect() # VISIBLE: small projection outside viewport, transparent fill and edge grid.rect(gp=gpar(fill=cols[2],col=cols[1]),height=unit(1.1,"npc"),width =unit(0.18,"npc"),x=0.1) # VISIBLE: small projection outside viewport, standard colours fill and edge grid.rect(gp=gpar(fill=2,col=3),height=unit(1.1,"npc"),width=unit(0.18," npc"),x=0.3) # INVISIBLE: larger projection outside viewport, transparent colours fill and edge grid.rect(gp=gpar(fill=cols[2],col=cols[1]),height=unit(1.5,"npc"),width =unit(0.18,"npc"),x=0.5) # VISIBLE: larger projection outside viewport, standard colours fill and edge grid.rect(gp=gpar(fill=2,col=3),height=unit(1.5,"npc"),width=unit(0.18," npc"),x=0.7) # MIXED: larger projection outside viewport, standard colour edge visible, transparent fill not grid.rect(gp=gpar(fill=cols[2],col=3),height=unit(1.5,"npc"),width=unit( 0.18,"npc"),x=0.9) I can also show the same effect using standard graphics calls: par(xpd=NA) plot(c(1,2)) rect(1.01,1,1.19,2.2,border=cols[1],col=cols[2]) rect(1.21,1,1.39,2.2,border=3,col=2) rect(1.41,1,1.59,4,border=cols[1],col=cols[2]) rect(1.61,1,1.79,4,border=3,col=2) rect(1.81,1,1.99,4,border=3,col=cols[2]) Both of these examples have missing alpha transparency colours under Windows but produce the expected filled rectangles under Linux. > > You need to add type="count" to the call to histogram, or rescale the bar > heights. My post was a rather simplified example - I am actually trying to make visible a "small" distribution on the skirt of a large one, which means that scaling the bar heights is not sufficient. I have worked around the problem by modifying panel.histogram to _clip_ the bar heights. Keith Keith Ponting Aurix Ltd, Malvern WR14 3SZ UK ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.