Re: [R] [FORGED] Re: draw stripes in a circle in R
On 15/06/17 13:51, David Winsemius wrote: On Jun 14, 2017, at 5:52 PM, Jeff Newmillerwrote: Sigh. I never load packages in .Rprofile to avoid the irreproducibility trap. Might seem drastic to some, but I don't feel much pain because I almost always edit my code in a file rather than on the fly at the console, and re-run it frequently from a fresh R process to check my progress. Yes, . But I am a long-time user of the rms/Hmisc combo, as well as the survival package, so near the top of my .Rprofile is: require(lattice) require(sos) require(rms) Should I be ashamed of that? I suppose I should, and I _am_ ashamed of some of the other stuff in there , ... and I've been meaning to address my manifold deficiencies w.r.t. irreproducibility by moving to RStudio, but I keep putting it off. This is getting *way* off topic ... but why does using RStudio help with the irreproducibility problem? I thought that RStudio just made it easier to point-and-click. For those who like doing that sort of thing. (I tend to believe the dictum that a GUI makes it easy to do easy things and impossible to do hard things.) cheers, Rolf -- Technical Editor ANZJS Department of Statistics University of Auckland Phone: +64-9-373-7599 ext. 88276 __ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see 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.
Re: [R] [FORGED] Re: draw stripes in a circle in R
> On Jun 14, 2017, at 5:52 PM, Jeff Newmillerwrote: > > Sigh. I never load packages in .Rprofile to avoid the irreproducibility trap. > Might seem drastic to some, but I don't feel much pain because I almost > always edit my code in a file rather than on the fly at the console, and > re-run it frequently from a fresh R process to check my progress. Yes, . But I am a long-time user of the rms/Hmisc combo, as well as the survival package, so near the top of my .Rprofile is: require(lattice) require(sos) require(rms) Should I be ashamed of that? I suppose I should, and I _am_ ashamed of some of the other stuff in there , ... and I've been meaning to address my manifold deficiencies w.r.t. irreproducibility by moving to RStudio, but I keep putting it off. -- David. > -- > Sent from my phone. Please excuse my brevity. > > On June 14, 2017 3:27:15 PM PDT, David Winsemius > wrote: >> >>> On Jun 14, 2017, at 1:53 PM, Rolf Turner >> wrote: >>> >>> On 15/06/17 05:29, David Winsemius wrote: > On Jun 14, 2017, at 10:18 AM, David Winsemius >> wrote: > > >> On Jun 14, 2017, at 9:46 AM, Jeff Newmiller >> wrote: >> >> I don't see a question. If your question is whether R supports >> pattern fills, AFAIK it does not. If that is not your question, ask >> one. >> -- >> Sent from my phone. Please excuse my brevity. >> >> On June 14, 2017 7:57:41 AM PDT, jean-philippe >> wrote: >>> dear R users, >>> >>> I would like to fill a circle with yellow stripes instead of a >> uniform >>> yellow color. To draw the circle I used the following command >> after >>> having loaded the (very nice !) plotrix library : I finally understood the question and it needs a hack to the >> draw.circle function in plotrix since the angle and density arguments >> don't get passed in: First get code for draw.circle: -- draw.circle # then copy to console and edit draw.circle2 <- function (x, y, radius, nv = 100, border = NULL, >> col = NA, lty = 1, density=NA, angle=45, lwd = 1 ) { xylim <- par("usr") plotdim <- par("pin") ymult <- getYmult() angle.inc <- 2 * pi/nv angles <- seq(0, 2 * pi - angle.inc, by = angle.inc) if (length(col) < length(radius)) col <- rep(col, length.out = length(radius)) for (circle in 1:length(radius)) { xv <- cos(angles) * radius[circle] + x yv <- sin(angles) * radius[circle] * ymult + y polygon(xv, yv, border = border, col = col, lty = lty, >> density=density, angle=angle, lwd = lwd) } invisible(list(x = xv, y = yv)) } Now run your call to pdf with draw.circle2 instead of draw.circle. >>> >>> This is just idle curiosity, since I'm not really able to contribute >> anything useful, but I can't resist asking: When I try to run the OP's >> code I get an error: >>> Error in alpha("red", 0.4) : could not find function "alpha". >>> >>> Why does this (apparently) not happen to anyone else? Why does the >> universe pick on *me*? What is the function "alpha()"? Where is it to >> be found? >> >> I discovered some time ago that I no longer needed to load the ggplot2 >> package. I wasn't entirely happy to make this discovery since I stilll >> cling to the old lattice style. Eventually I figgured out that it was >> because one of packages that I load in my .Rprofile-file had changed >> its imports. The `alpha` function I see is from ggplot2. Resistance is >> futile. I've now been partially assimilated. >> >> >>> >>> Searching on "alpha" is of course completely unproductive; there are >> far too many (totally irrelevant) instances. >> >> >>> >>> cheers, >>> >>> Rolf >>> >>> -- >>> Technical Editor ANZJS >>> Department of Statistics >>> University of Auckland >>> Phone: +64-9-373-7599 ext. 88276 >> >> David Winsemius >> Alameda, CA, USA David Winsemius Alameda, CA, USA __ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see 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.
Re: [R] [FORGED] Re: draw stripes in a circle in R
Sigh. I never load packages in .Rprofile to avoid the irreproducibility trap. Might seem drastic to some, but I don't feel much pain because I almost always edit my code in a file rather than on the fly at the console, and re-run it frequently from a fresh R process to check my progress. -- Sent from my phone. Please excuse my brevity. On June 14, 2017 3:27:15 PM PDT, David Winsemiuswrote: > >> On Jun 14, 2017, at 1:53 PM, Rolf Turner >wrote: >> >> On 15/06/17 05:29, David Winsemius wrote: On Jun 14, 2017, at 10:18 AM, David Winsemius > wrote: > On Jun 14, 2017, at 9:46 AM, Jeff Newmiller > wrote: > > I don't see a question. If your question is whether R supports >pattern fills, AFAIK it does not. If that is not your question, ask >one. > -- > Sent from my phone. Please excuse my brevity. > > On June 14, 2017 7:57:41 AM PDT, jean-philippe > wrote: >> dear R users, >> >> I would like to fill a circle with yellow stripes instead of a >uniform >> yellow color. To draw the circle I used the following command >after >> having loaded the (very nice !) plotrix library : >>> I finally understood the question and it needs a hack to the >draw.circle function in plotrix since the angle and density arguments >don't get passed in: >>> First get code for draw.circle: >>> -- >>> draw.circle # then copy to console and edit >>> draw.circle2 <- function (x, y, radius, nv = 100, border = NULL, >col = NA, lty = 1, >>>density=NA, angle=45, lwd = 1 ) >>> { >>> xylim <- par("usr") >>> plotdim <- par("pin") >>> ymult <- getYmult() >>> angle.inc <- 2 * pi/nv >>> angles <- seq(0, 2 * pi - angle.inc, by = angle.inc) >>> if (length(col) < length(radius)) >>> col <- rep(col, length.out = length(radius)) >>> for (circle in 1:length(radius)) { >>> xv <- cos(angles) * radius[circle] + x >>> yv <- sin(angles) * radius[circle] * ymult + y >>> polygon(xv, yv, border = border, col = col, lty = lty, >density=density, angle=angle, >>> lwd = lwd) >>> } >>> invisible(list(x = xv, y = yv)) >>> } >>> Now run your call to pdf with draw.circle2 instead of draw.circle. >> >> This is just idle curiosity, since I'm not really able to contribute >anything useful, but I can't resist asking: When I try to run the OP's >code I get an error: >> >>> Error in alpha("red", 0.4) : could not find function "alpha". >> >> Why does this (apparently) not happen to anyone else? Why does the >universe pick on *me*? What is the function "alpha()"? Where is it to >be found? > >I discovered some time ago that I no longer needed to load the ggplot2 >package. I wasn't entirely happy to make this discovery since I stilll >cling to the old lattice style. Eventually I figgured out that it was >because one of packages that I load in my .Rprofile-file had changed >its imports. The `alpha` function I see is from ggplot2. Resistance is >futile. I've now been partially assimilated. > > >> >> Searching on "alpha" is of course completely unproductive; there are >far too many (totally irrelevant) instances. > > >> >> cheers, >> >> Rolf >> >> -- >> Technical Editor ANZJS >> Department of Statistics >> University of Auckland >> Phone: +64-9-373-7599 ext. 88276 > >David Winsemius >Alameda, CA, USA __ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see 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.
Re: [R] [FORGED] Re: draw stripes in a circle in R
On 15/06/17 10:27, David Winsemius wrote: On Jun 14, 2017, at 1:53 PM, Rolf Turnerwrote: Why does this (apparently) not happen to anyone else? Why does the universe pick on *me*? What is the function "alpha()"? Where is it to be found? I discovered some time ago that I no longer needed to load the ggplot2 package. I wasn't entirely happy to make this discovery since I stilll cling to the old lattice style. Eventually I figgured out that it was because one of packages that I load in my .Rprofile-file had changed its imports. The `alpha` function I see is from ggplot2. Resistance is futile. I've now been partially assimilated. N'ya-hah! The light dawns! Thank you. cheers, Rolf -- Technical Editor ANZJS Department of Statistics University of Auckland Phone: +64-9-373-7599 ext. 88276 __ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see 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.
Re: [R] [FORGED] Re: draw stripes in a circle in R
Package 'scales' has the alpha function... associated with ggplot2. A bit out of place here if that is the origin. Yes, we are squarely in non-reproducible example territory, also known as the Twilight Zone. -- Sent from my phone. Please excuse my brevity. On June 14, 2017 1:53:21 PM PDT, Rolf Turnerwrote: >On 15/06/17 05:29, David Winsemius wrote: >> >>> On Jun 14, 2017, at 10:18 AM, David Winsemius > wrote: >>> >>> On Jun 14, 2017, at 9:46 AM, Jeff Newmiller > wrote: I don't see a question. If your question is whether R supports >pattern fills, AFAIK it does not. If that is not your question, ask >one. -- Sent from my phone. Please excuse my brevity. On June 14, 2017 7:57:41 AM PDT, jean-philippe > wrote: > dear R users, > > I would like to fill a circle with yellow stripes instead of a >uniform > yellow color. To draw the circle I used the following command >after > having loaded the (very nice !) plotrix library : >> >> I finally understood the question and it needs a hack to the >draw.circle function in plotrix since the angle and density arguments >don't get passed in: >> >> First get code for draw.circle: >> >> -- >> >> draw.circle # then copy to console and edit >> >> draw.circle2 <- function (x, y, radius, nv = 100, border = NULL, col >= NA, lty = 1, >> density=NA, angle=45, lwd = 1 ) >> { >> xylim <- par("usr") >> plotdim <- par("pin") >> ymult <- getYmult() >> angle.inc <- 2 * pi/nv >> angles <- seq(0, 2 * pi - angle.inc, by = angle.inc) >> if (length(col) < length(radius)) >> col <- rep(col, length.out = length(radius)) >> for (circle in 1:length(radius)) { >> xv <- cos(angles) * radius[circle] + x >> yv <- sin(angles) * radius[circle] * ymult + y >> polygon(xv, yv, border = border, col = col, lty = lty, >density=density, angle=angle, >> lwd = lwd) >> } >> invisible(list(x = xv, y = yv)) >> } >> >> Now run your call to pdf with draw.circle2 instead of draw.circle. > >This is just idle curiosity, since I'm not really able to contribute >anything useful, but I can't resist asking: When I try to run the OP's > >code I get an error: > >> Error in alpha("red", 0.4) : could not find function "alpha". > >Why does this (apparently) not happen to anyone else? Why does the >universe pick on *me*? What is the function "alpha()"? Where is it to > >be found? > >Searching on "alpha" is of course completely unproductive; there are >far >too many (totally irrelevant) instances. > >cheers, > >Rolf __ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see 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.
Re: [R] [FORGED] Re: draw stripes in a circle in R
> On Jun 14, 2017, at 1:53 PM, Rolf Turnerwrote: > > On 15/06/17 05:29, David Winsemius wrote: >>> On Jun 14, 2017, at 10:18 AM, David Winsemius >>> wrote: >>> >>> On Jun 14, 2017, at 9:46 AM, Jeff Newmiller wrote: I don't see a question. If your question is whether R supports pattern fills, AFAIK it does not. If that is not your question, ask one. -- Sent from my phone. Please excuse my brevity. On June 14, 2017 7:57:41 AM PDT, jean-philippe wrote: > dear R users, > > I would like to fill a circle with yellow stripes instead of a uniform > yellow color. To draw the circle I used the following command after > having loaded the (very nice !) plotrix library : >> I finally understood the question and it needs a hack to the draw.circle >> function in plotrix since the angle and density arguments don't get passed >> in: >> First get code for draw.circle: >> -- >> draw.circle # then copy to console and edit >> draw.circle2 <- function (x, y, radius, nv = 100, border = NULL, col = NA, >> lty = 1, >>density=NA, angle=45, lwd = 1 ) >> { >> xylim <- par("usr") >> plotdim <- par("pin") >> ymult <- getYmult() >> angle.inc <- 2 * pi/nv >> angles <- seq(0, 2 * pi - angle.inc, by = angle.inc) >> if (length(col) < length(radius)) >> col <- rep(col, length.out = length(radius)) >> for (circle in 1:length(radius)) { >> xv <- cos(angles) * radius[circle] + x >> yv <- sin(angles) * radius[circle] * ymult + y >> polygon(xv, yv, border = border, col = col, lty = lty, >> density=density, angle=angle, >> lwd = lwd) >> } >> invisible(list(x = xv, y = yv)) >> } >> Now run your call to pdf with draw.circle2 instead of draw.circle. > > This is just idle curiosity, since I'm not really able to contribute anything > useful, but I can't resist asking: When I try to run the OP's code I get an > error: > >> Error in alpha("red", 0.4) : could not find function "alpha". > > Why does this (apparently) not happen to anyone else? Why does the universe > pick on *me*? What is the function "alpha()"? Where is it to be found? I discovered some time ago that I no longer needed to load the ggplot2 package. I wasn't entirely happy to make this discovery since I stilll cling to the old lattice style. Eventually I figgured out that it was because one of packages that I load in my .Rprofile-file had changed its imports. The `alpha` function I see is from ggplot2. Resistance is futile. I've now been partially assimilated. > > Searching on "alpha" is of course completely unproductive; there are far too > many (totally irrelevant) instances. > > cheers, > > Rolf > > -- > Technical Editor ANZJS > Department of Statistics > University of Auckland > Phone: +64-9-373-7599 ext. 88276 David Winsemius Alameda, CA, USA __ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see 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.
Re: [R] [FORGED] Re: draw stripes in a circle in R
Hi Jean-Phillipe, Thanks for the plug on plotrix. Because of that I will suggest a gross hack that will do almost what you want: # your code down to draw.circle segments(c(-12.7,-12.7),c(-11.2,-10.6),c(-12,-12), c(-10.75,-10.15),col="white",lwd=28) draw.circle(-12.85,-10.9,0.85,nv=1000,border=NULL, col=NA,lty=1,lwd=1) box() dev.off() Your problem is that plotrix is written in base graphics, which is simple to understand, but does not support layered graphics. Thus I have to do the striping over the yellow circle and avoid overwriting the big red stripe. You should do this using the grid graphic system, but that would take too large a chunk of my morning to write an example for you. To Rolf - It happened to me as well, but because I saw Venus smiling at me in the sky this morning I was granted the knowledge that it was a function that had not been properly introduced to us and simply replaced it with "red". Such are the benefits of evidence-based astrology. Jim On Thu, Jun 15, 2017 at 8:04 AM, jeanphilippe.fontaine <jeanphilippe.fonta...@gssi.infn.it> wrote: > > > > > > > Envoyé depuis mon appareil Samsung > > Message d'origine > De : Rolf Turner <r.tur...@auckland.ac.nz> > Date : 14/06/2017 22:53 (GMT+01:00) > À : David Winsemius <dwinsem...@comcast.net> > Cc : r-help@r-project.org > Objet : Re: [R] [FORGED] Re: draw stripes in a circle in R > > On 15/06/17 05:29, David Winsemius wrote: >> >>> On Jun 14, 2017, at 10:18 AM, David Winsemius <dwinsem...@comcast.net> >>> wrote: >>> >>> >>>> On Jun 14, 2017, at 9:46 AM, Jeff Newmiller <jdnew...@dcn.davis.ca.us> >>>> wrote: >>>> >>>> I don't see a question. If your question is whether R supports pattern >>>> fills, AFAIK it does not. If that is not your question, ask one. >>>> -- >>>> Sent from my phone. Please excuse my brevity. >>>> >>>> On June 14, 2017 7:57:41 AM PDT, jean-philippe >>>> <jeanphilippe.fonta...@gssi.infn.it> wrote: >>>>> dear R users, >>>>> >>>>> I would like to fill a circle with yellow stripes instead of a uniform >>>>> yellow color. To draw the circle I used the following command after >>>>> having loaded the (very nice !) plotrix library : >> >> I finally understood the question and it needs a hack to the draw.circle >> function in plotrix since the angle and density arguments don't get passed >> in: >> >> First get code for draw.circle: >> >> -- >> >> draw.circle # then copy to console and edit >> >> draw.circle2 <- function (x, y, radius, nv = 100, border = NULL, col = NA, >> lty = 1, >> density=NA, angle=45, lwd = 1 ) >> { >> xylim <- par("usr") >> plotdim <- par("pin") >> ymult <- getYmult() >> angle.inc <- 2 * pi/nv >> angles <- seq(0, 2 * pi - angle.inc, by = angle.inc) >> if (length(col) < length(radius)) >> col <- rep(col, length.out = length(radius)) >> for (circle in 1:length(radius)) { >> xv <- cos(angles) * radius[circle] + x >> yv <- sin(angles) * radius[circle] * ymult + y >> polygon(xv, yv, border = border, col = col, lty = lty, >> density=density, angle=angle, >> lwd = lwd) >> } >> invisible(list(x = xv, y = yv)) >> } >> >> Now run your call to pdf with draw.circle2 instead of draw.circle. > > This is just idle curiosity, since I'm not really able to contribute > anything useful, but I can't resist asking: When I try to run the OP's > code I get an error: > >> Error in alpha("red", 0.4) : could not find function "alpha". > > Sorry for the lack of precision, alpha is just to add some transparency to > the color. This alpha parameter ranges from 0 fully transparent to 1, full > color.I don't remember having loaded any package to use this function, I > think it is there in base R. > Why does this (apparently) not happen to anyone else? Why does the > universe pick on *me*? What is the function "alpha()"? Where is it to > be found? > > Searching on "alpha" is of course completely unproductive; there are far > too many (totally irrelevant) instances. > > cheers, > > Rolf > > -- > Technical Editor ANZJS > Department of Statistics > University of Auckland > Phone: +64-9-373-7599 ext. 88276 > > __ > R
Re: [R] [FORGED] Re: draw stripes in a circle in R
Envoyé depuis mon appareil Samsung Message d'origine De : Rolf Turner <r.tur...@auckland.ac.nz> Date : 14/06/2017 22:53 (GMT+01:00) À : David Winsemius <dwinsem...@comcast.net> Cc : r-help@r-project.org Objet : Re: [R] [FORGED] Re: draw stripes in a circle in R On 15/06/17 05:29, David Winsemius wrote: > >> On Jun 14, 2017, at 10:18 AM, David Winsemius <dwinsem...@comcast.net> wrote: >> >> >>> On Jun 14, 2017, at 9:46 AM, Jeff Newmiller <jdnew...@dcn.davis.ca.us> >>> wrote: >>> >>> I don't see a question. If your question is whether R supports pattern >>> fills, AFAIK it does not. If that is not your question, ask one. >>> -- >>> Sent from my phone. Please excuse my brevity. >>> >>> On June 14, 2017 7:57:41 AM PDT, jean-philippe >>> <jeanphilippe.fonta...@gssi.infn.it> wrote: >>>> dear R users, >>>> >>>> I would like to fill a circle with yellow stripes instead of a uniform >>>> yellow color. To draw the circle I used the following command after >>>> having loaded the (very nice !) plotrix library : > > I finally understood the question and it needs a hack to the draw.circle > function in plotrix since the angle and density arguments don't get passed in: > > First get code for draw.circle: > > -- > > draw.circle # then copy to console and edit > > draw.circle2 <- function (x, y, radius, nv = 100, border = NULL, col = NA, > lty = 1, > density=NA, angle=45, lwd = 1 ) > { > xylim <- par("usr") > plotdim <- par("pin") > ymult <- getYmult() > angle.inc <- 2 * pi/nv > angles <- seq(0, 2 * pi - angle.inc, by = angle.inc) > if (length(col) < length(radius)) > col <- rep(col, length.out = length(radius)) > for (circle in 1:length(radius)) { > xv <- cos(angles) * radius[circle] + x > yv <- sin(angles) * radius[circle] * ymult + y > polygon(xv, yv, border = border, col = col, lty = lty, >density=density, angle=angle, > lwd = lwd) > } > invisible(list(x = xv, y = yv)) > } > > Now run your call to pdf with draw.circle2 instead of draw.circle. This is just idle curiosity, since I'm not really able to contribute anything useful, but I can't resist asking: When I try to run the OP's code I get an error: > Error in alpha("red", 0.4) : could not find function "alpha". Sorry for the lack of precision, alpha is just to add some transparency to the color. This alpha parameter ranges from 0 fully transparent to 1, full color.I don't remember having loaded any package to use this function, I think it is there in base R. Why does this (apparently) not happen to anyone else? Why does the universe pick on *me*? What is the function "alpha()"? Where is it to be found? Searching on "alpha" is of course completely unproductive; there are far too many (totally irrelevant) instances. cheers, Rolf -- Technical Editor ANZJS Department of Statistics University of Auckland Phone: +64-9-373-7599 ext. 88276 __ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see 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. [[alternative HTML version deleted]] __ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see 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.
Re: [R] [FORGED] Re: draw stripes in a circle in R
On 15/06/17 05:29, David Winsemius wrote: On Jun 14, 2017, at 10:18 AM, David Winsemiuswrote: On Jun 14, 2017, at 9:46 AM, Jeff Newmiller wrote: I don't see a question. If your question is whether R supports pattern fills, AFAIK it does not. If that is not your question, ask one. -- Sent from my phone. Please excuse my brevity. On June 14, 2017 7:57:41 AM PDT, jean-philippe wrote: dear R users, I would like to fill a circle with yellow stripes instead of a uniform yellow color. To draw the circle I used the following command after having loaded the (very nice !) plotrix library : I finally understood the question and it needs a hack to the draw.circle function in plotrix since the angle and density arguments don't get passed in: First get code for draw.circle: -- draw.circle # then copy to console and edit draw.circle2 <- function (x, y, radius, nv = 100, border = NULL, col = NA, lty = 1, density=NA, angle=45, lwd = 1 ) { xylim <- par("usr") plotdim <- par("pin") ymult <- getYmult() angle.inc <- 2 * pi/nv angles <- seq(0, 2 * pi - angle.inc, by = angle.inc) if (length(col) < length(radius)) col <- rep(col, length.out = length(radius)) for (circle in 1:length(radius)) { xv <- cos(angles) * radius[circle] + x yv <- sin(angles) * radius[circle] * ymult + y polygon(xv, yv, border = border, col = col, lty = lty, density=density, angle=angle, lwd = lwd) } invisible(list(x = xv, y = yv)) } Now run your call to pdf with draw.circle2 instead of draw.circle. This is just idle curiosity, since I'm not really able to contribute anything useful, but I can't resist asking: When I try to run the OP's code I get an error: Error in alpha("red", 0.4) : could not find function "alpha". Why does this (apparently) not happen to anyone else? Why does the universe pick on *me*? What is the function "alpha()"? Where is it to be found? Searching on "alpha" is of course completely unproductive; there are far too many (totally irrelevant) instances. cheers, Rolf -- Technical Editor ANZJS Department of Statistics University of Auckland Phone: +64-9-373-7599 ext. 88276 __ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see 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.