Hi Dennis thanks, but I'd already tried something like this -- the dashed
lines
are parallel to the original plot vector, and not at a fixed maximal distance to
the original vector, where for example they would have curves around the peaks.
The boundary line points would only be parallel to the original vector line if
there is a straight stretch longer than 1 unit (if that is the minimal distance)
As I say it's the kind of thing one does at school using compass and ruler
but
writing an R routine to do it is tricky and several times in the past I have
re-invented the R wheel, writing code for whose purpose it then turns out there
already is a R function, so I'd thought I'd ask...
But thanks for your time Nick
>
> On 02 November 2015 at 14:22 Dennis Murphy <djmuser at gmail.com>
wrote:
>
>
> Hi:
>
> To produce the boundary lines one unit apart, this ought to work:
>
> veca<-c(4,3,6,5,7,3,2,3,3,6,8,7)
> plot(veca,type="l",lwd=2)
> lines(veca + 1, type = "l", lty = "dashed")
> lines(veca - 1, type = "l", lty = "dashed")
>
> If this is what you want, I suggest that you consult ?polygon to draw
> a shaded region between the boundary lines. I'll leave that as
> homework for you - see the examples section to see how to close the
> polygon.
>
> Dennis
>
> On Mon, Nov 2, 2015 at 4:33 AM, WRAY NICHOLAS
> <nicholas.wray at ntlworld.com> wrote:
> > Hi I am plotting various strands of information, and I want to
create an
> > "envelope" around each line, so that the locus of the
envelope is the
> > boundary
> > points no more than a fixed maximum distance from the plotted
line, a
> > bit like
> > drawing a larger rectangle with paralle sides and curved compass
corners
> > around
> > a smaller rectangle. Obviously I can work out how to do this in
code
> > (eventually) but I suspect it would take me a while and i was
wondering
> > whether
> > there was some R function which I don't know about which
creates sets of
> > of
> > points at a given maximal distance
> >
> > the lines are simple vectors, ie like this noddy example
> >
> > veca<-c(4,3,6,5,7,3,2,3,3,6,8,7)
> > plot(veca,type="l",lwd=2)
> >
> > then I want to plot the locus of the boundary of all points no
more than
> > (say) 1
> > unit from the line I imagine that one would have to provide a
larger set
> > of
> > interpolated points between the actual points of veca, but I can
do that
> > no
> > problem
> >
> > I'd be grateful if anyone out there in the R-ethervoid has any
ideas
> >
> > Thanks, Nick Wray
> > [[alternative HTML version deleted]]
> >
> > ______________________________________________
> > R-help at 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]]