[R] drawing segments through points with pch=1
Uwe Ligges
ligges at statistik.tu-dortmund.de
Sun Jul 20 15:13:39 CEST 2008
You probably want to make your code readable, read ?points and go ahead
by making the plot without points (plot(....., type="n")), drawing
segments and at the end paint points with white background colour in
order to "overwrite" the segments:
y <- c(1.21, 0.51, 0.14, 1.62, -0.8,
0.72, -1.71, 0.84, 0.02, -0.12)
ybar <- mean(y)
ll <- length(y)
ybarv <- rep(ybar, ll)
x <- 1:ll
plot(x, ybarv, type="n")
segments(x[1], ybar, x[ll], ybar)
points(x, ybarv, pch=21, bg="white")
Uwe Ligges
David Epstein wrote:
> Please excuse me for asking such basic questions:
>
> Here is my code
>> y=c(1.21,0.51,0.14,1.62,-0.8,0.72,-1.71,0.84,0.02,-0.12)
>> ybar=mean(y)
>> ll=length(y);
>> ybarv=rep(ybar,ll)
>> x=1:ll
>> plot(x,ybarv,pch=1)
>> segments(x[1],ybar,x[ll],ybar)
>
> What I get is a collection of small circles, with a segment "on top" of
> the circles, which is almost what I want. But I don't want the segment
> to be visible inside any small circle.
>
> Is there an easy way to arrange for the segment to "lie behind" the
> pch=1 markers, as in hidden line removal, so that the circles remain
> with nothing inside them? I tried putting the segments command first,
> but then no segment appeared at all.
>
> In general, is there a method of laying a drawing "on top" of another. I
> tried inserting add="T" as an argument to plot, and R objected strongly.
>
> Thanks for any help
>
> David Epstein
>
> ______________________________________________
> R-help at 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.
More information about the R-help
mailing list