[R] alphachannel on pdf-device
Rainer Hurling
rhurlin at gwdg.de
Sat Nov 25 19:16:50 CET 2006
Thank you Paul Murrel for answering and thank you Brian Ripley for
correcting this behaviour in R-patched.
I am sorry, but I think there is just another 'misfeature' with
transparent figures since R-2.4.0 and it seems not to be corrected in
todays R-2.4.0 Patched (2006-11-24 r39989).
In earlier versions when producing a transparent figure without any
border (=NA), nothing was drawn. In newer versions there is something
like a white border line. You can see it in particular when drawing a
new dotted line above this border of the underlying figure. I should
demonstrate it with a small example:
--------------------------------------------------------------------
pdf("test_alpha.pdf", version="1.4")
plot(1:8, 1:8, type="n", xlab="", ylab="")
lines(c(1,8), c(1,8), type="l", col="lightblue", lwd=15)
# rectangle with alphachannel=255 (no transparency)
goldenrod1 <- rgb(255,193,37,255, names=c("goldenrod1"), max=255)
rect(4,4,7,7, col=goldenrod1, border=NA)
lines(c(4,4,7,7,4), c(4,7,7,4,4), col="red", lty=2)
text(5,7, "no transparency")
# polygon with alphachannel=64 (transparency near 40%)
polygon(c(5,2,2,5,5), c(2,2,5,5,2), col=rgb(255,192,203,64, max = 255),
border=NA)
lines(c(5,2,2,5,5), c(2,2,5,5,2), col="red", lty=2)
text(4,2, "transparency 40%")
dev.off()
--------------------------------------------------------------------
It is probably just a mistake. What do you think?
Rainer Hurling
Paul Murrell schrieb:
> Hi
>
> This appears to have been fixed in r-patched (by Brian Ripley)
>
> Paul
>
>
> Rainer Hurling wrote:
>> Dear R users,
>>
>> since R-2.4.0 I am not able any more to draw figures without
>> transparency after drawing one figure with alphachannel set lower than 100%.
>>
>> For better unterstanding here a small example of my problem:
>>
>>
>> -----------------------------------------------
>> pdf(paste("test_alpha_rgb.pdf",sep=""), version="1.4")
>>
>> plot(1:8, 1:8, type="n", xlab="", ylab="")
>>
>> lines(c(1,8), c(1,8), type="l", col="lightblue", lwd=15)
>>
>> # polygon with alphachannel=64 (transparency 40%)
>> polygon(c(5,2,2,5,5), c(2,2,5,5,2), col=rgb(255,192,203,64, max = 255),
>> border=NA)
>> text(4,2, "transparency 40%")
>>
>> # rectangle with alphachannel=255 (no transparency)
>> goldenrod1 <- rgb(255,193,37,255, names=c("goldenrod1"), max=255)
>> rect(4,4,7,7, col=goldenrod1, border=goldenrod1)
>> text(5,7, "no transparency")
>>
>> dev.off()
>> -----------------------------------------------
>>
>>
>> In this example (see pdf in attachment) after plotting a line without
>> any transparency a polygon is drawn with alphachannel set to 40%. All
>> following figures and even text is shown with transparency.
>>
>> The described behaviour seems to be the same on FreeBSD 7.0-CURRENT and
>> on WindowsXP.
>>
>> Am I doing something wrong?
>>
>> Many thanks for any help,
>> Rainer Hurling
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: test_alpha_pdf.R
Url: https://stat.ethz.ch/pipermail/r-help/attachments/20061125/34e8fd0f/attachment.pl
More information about the R-help
mailing list