On 04/14/2011 03:30 AM, Michael Friendly wrote:
I have a diagram to be included in latex, where all my figures are .eps
graphics (so pdflatex is not an
option) and I want to achieve something
like the following: three concentric filled circles varying in lightness
or saturation. It is easiest to do this using
transparency, but in my test using the postscript driver, the
transparent color fills do not appear. Is it
correct that postscript() does not support transparency?

circle <-function (radius = 1, segments=61) {
angles <- (0:segments)*2*pi/segments
radius * cbind( cos(angles), sin(angles))
}

plot(1:5, 1:5, type='n', xlim=c(-1,5), ylim=c(-1,5), xlab='', ylab='',
asp=1, xaxt="n", yaxt="n")

#clrs <- trans.colors("lightblue", alpha=c(.2, .4, .6)) ## from heplots
package
clrs <- c("#ADD8E633", "#ADD8E666", "#ADD8E699")

c1 <- circle(3)
polygon( c1, col=clrs[1], border="lightblue")
polygon(.67*c1, col=clrs[2], border="lightblue")
polygon(.33*c1, col=clrs[3], border="lightblue")

arrows(-1, 0, 5, 0, angle=10, length=.2, lwd=2, col="darkgray")
arrows( 0, -1, 0, 5, angle=10, length=.2, lwd=2, col="darkgray")

One alternative that sort of works is to use the png() driver, and then
convert fig.png fig.eps
but I need very high resolution to make the real diagram legible.

It might suffice to use hcl() colors to approximate what I've done with
transparency,
but I don't know how to start with a given color ("lightblue") and
achieve roughly
similar resuts.

Hi Michael,
For a "one off" job, I would probably do the transparent overlays in the pdf device, open the result in xpdf or Acrobat and then use the GIMP to identify the resulting colors from a screen shot. Then redo the plot in the postscript device using the opaque colors. This is only an approximation, of course, but it gets the job done.

Jim

______________________________________________
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.

Reply via email to