# Re: [R] Plot problems: xlim

From: Jim Lemon <bitwrit_at_ozemail.com.au>
Date: Sat 24 Dec 2005 - 14:12:10 EST

Ronnie Babigumira wrote:
> Hi,
> Still fresh in R, tried to figure this out, now on my second day running with no luck (and a pile of hair on my desk) so
> I have thrown in the towel and would like to ask for some help.
>
> Here is what I am trying to do. I am trying to plot a distribution, I have 99 points, bound in the range
>
> xlim.min: -0.0173
> xlim.max: 0.02103
>
> However, I have a value outside this range (0.2454959) which I would like to add to the plot as a line and to do this I
> use abline(v=0.2454959)
>
> This is what I write
>
> >xlim = c(-0.02, 0.3)
> >denz <- density(morp)
> >plot.density(denz, xlim = xlim, ylim = c(0,70))
> >abline(v=0.2454959)
>
> Without any options, plot.density spreads out nicely, however, naturally, the line I want to add is not plotted since it

> is well outside the range automatically determined by plot.density hence the need to add xlim however this produces
> something I dont find aesthetically appealing. The plot is squeezed out into a very lean "bell" shape.
>
> So (finally) my question, how can i widen the spread of my plot and yet also be able to add my xline.
>
Hi Ronnie,

For only one line, it is probably easiest to stick in an axis break and label the line on the x axis. Notice that the position of the line is arbitrarily set to be far enough beyond the end of the density curve to allow room for the axis break.

testdata<-rnorm(50,sd=0.01)
denz<-density(testdata)
plot(denz,xlim=c(-0.02,0.04),axes=FALSE) box()
axis(1,at=c(-0.02,0,0.02,0.039),labels=c(-0.02,0,0.02,0.2454959)) abline(v=0.039)
axis.break(1,breakpos=0.037)

This is probably a common enough problem for inclusion in the axis.break example.

Jim

R-help@stat.math.ethz.ch mailing list