[R] getting lines with non-rounded caps?

Prof Brian D Ripley ripley at stats.ox.ac.uk
Wed Sep 20 16:20:53 CEST 2000


On Wed, 20 Sep 2000, Yves Gauvreau wrote:

> Since the guy wants flat ends wouldn't it be simpler and more portable to
> use directly filled rectangles (rect) instead of lines?

You can't join rectangles together, which is why I wrote a long
explanation.

> 
> Just a thought
> 
> Yves Gauvreau
> 
> 
> ----- Original Message -----
> From: "Prof Brian Ripley" <ripley at stats.ox.ac.uk>
> To: <xyzzy at speakeasy.org>; <paradis at isem.univ-montp2.fr>
> Cc: <r-help at stat.math.ethz.ch>
> Sent: Wednesday, September 20, 2000 6:16 AM
> Subject: Re: [R] getting lines with non-rounded caps?
> 
> 
> >
> > > Date: Wed, 20 Sep 2000 10:50:08 +0200
> > > To: Trent Piepho <xyzzy at speakeasy.org>
> > > From: Emmanuel Paradis <paradis at isem.univ-montp2.fr>
> > > Subject: Re: [R] getting lines with non-rounded caps?
> > > Cc: r-help at stat.math.ethz.ch
> > >
> > > At 11:31 19/09/00 -0700, you wrote:
> > > >I'm trying to get a plot with wide lines that don't have rounded end
> caps.
> > > >You can see the effect quite clearly with a plot like this:
> > > >
> > > >plot(0:1)
> > > >lines(c(1.5,1.5),c(0,.5),lwd=20,col="red")
> > > >lines(c(1.5,1.5),c(.5,1),lwd=20,col="green")
> > > >abline(h=0)
> > > >abline(h=0.5)
> > > >abline(h=1)
> > > >
> > > >The colored lines should be between the horizontal lines, but because
> of the
> > > >rounded end caps, they aren't.
> > > >
> > > >Under X11, if I set lty to something like "F0", the end caps are turned
> off.
> > > >Unfortunately, the "0" appears to get ignored, and the line style is
> the same
> > > >as "FF", i.e. 16 units of drawn line, then 16 units of space.
> > > >
> > > >With the postscript device, lines styles like "FF" still get rounded
> end
> > > caps,
> > > >unlike X11.
> > >
> > > Hi,
> > >
> > > This is a behaviour I already noticed under Windows NT when using
> plot(...,
> > > type="h", lwd=10), so that the thickness of the lines is expanded all
> > > around their starting- and end-points, rather than only perpandicularly
> to
> > > the lines (which was what I expected). A workaround for the example you
> > > give is to use rect()
> >
> > It may be what you expected, but it is not what normally happens in
> > computer graphics.  The idea is that the line is drawn with a round pen
> > of radius lwd.  If you use a flat-ended pen, you get problems when a
> > line changes direction discontinuously (and polylines do), as the
> > line appears half-broken on the outside.
> >
> > PostScript has different options for the internal changes of
> > direction (setlinejoin) and the ends (setlinecap).  So does X11, and I
> > see that the devX11 device uses JoinRound, and CapRound if lty=0
> > otherwise CapButt.
> >
> > Is there a case for adding cap-style and join-style to the line type
> options?
> > I am not sure if all the devices could support them.  In particular,
> > I don't know if it is possible to achieve different internal and
> > end effects under the Windows graphics model.
> >
> > --
> > Brian D. Ripley,                  ripley at stats.ox.ac.uk
> > Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
> > University of Oxford,             Tel:  +44 1865 272861 (self)
> > 1 South Parks Road,                     +44 1865 272860 (secr)
> > Oxford OX1 3TG, UK                Fax:  +44 1865 272595
> >
> > -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.
> -.-.-
> > r-help mailing list -- Read
> http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
> > Send "info", "help", or "[un]subscribe"
> > (in the "body", not the subject !)  To: r-help-request at stat.math.ethz.ch
> >
> _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._.
> _._
> 
> -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
> r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
> Send "info", "help", or "[un]subscribe"
> (in the "body", not the subject !)  To: r-help-request at stat.math.ethz.ch
> _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
> 

-- 
Brian D. Ripley,                  ripley at stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272860 (secr)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595

-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !)  To: r-help-request at stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._



More information about the R-help mailing list