[R] Plot problems: xlim
Jim Lemon
bitwrit at ozemail.com.au
Sat Dec 24 04:12:10 CET 2005
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))
> >hist(morp, freq=F, add= T)
> >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
More information about the R-help
mailing list