# Re: [R] how to plot density distribution with a arrow pointer?

Date: Thu 16 Jun 2005 - 16:55:59 EST

x0 <- 0.899
x <- c( rnorm(6000), rnorm(4000, mean=3) )  plot( d <- density(x) )

y0 <- approx( d\$x, d\$y, xout=x0 )\$y # height at x0

If you want a shaded effect, you can try the following :

xx <- seq( x0, max(x), by=0.1 )
yy <- approx( d\$x, d\$y, xout=xx )\$y

plot(d)
polygon( c( xx, rev(xx) ), c( yy, rep(0, length(yy)) ), col=8 )

On Thu, 2005-06-16 at 09:12 +0800, Hu Chen wrote:
> Thanks.
> A small arrow may be more nice-looking than a long cutting line.
> and, another question,
> how to get the p-value of the position of X0?
> If the whole distribution is not as regular as norm, chi-square but a
> strange one, how could I get the X0's p-value?
>
> any functions?
>
> Thanks very much.
>
> On 6/15/05, Jim Brennan <jfbrennan@rogers.com> wrote:
> > This is one way not so good
> > R>X<-rnorm(1000000)
> > R>X0<-.899
> > R>plot(density(X))
> > R>abline(v=X0)
> >
> > A better way
> >
> > R>x<-seq(-5,5,.01)
> > R>plot(x,dnorm(x))
> > R>plot(x,dnorm(x),type="l",col=2)
> > R>abline(v=X0,col=4)
> > R>?text
> > R>text(X0,.2,paste("P(X<X0) =",signif(pnorm(X0),3)),pos=2)
> > R>abline(v=X0,col=4)
> >
> > If you actually want arrows do ?arrows
> > Jim
> >
> > -----Original Message-----
> > From: r-help-bounces@stat.math.ethz.ch
> > [mailto:r-help-bounces@stat.math.ethz.ch] On Behalf Of Hu Chen
> > Sent: June 15, 2005 10:41 AM
> > To: R
> > Subject: [R] how to plot density distribution with a arrow pointer?
> >
> > Hi all,
> > for example:
> > > X<- rnorm(1000)
> > > X0 <- 0.899
> >
> > I want to draw a density distribution plot with a arrow pointer
> > indicating the position of X0, meanwhile, giving out the p-value.
> >
> > any functions?
> >
> > Thanks very much.
> >
> > ______________________________________________
> > R-help@stat.math.ethz.ch mailing list
> > https://stat.ethz.ch/mailman/listinfo/r-help
> > http://www.R-project.org/posting-guide.html
> >
> >
>
> ______________________________________________
> R-help@stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help