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

Adaikalavan Ramasamy ramasamy at cancer.org.uk
Thu Jun 16 08:55:59 CEST 2005


I am assuming that you want to do this empirically :

 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

 segments( x0, 0, x0, y0, col=2 )

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 at 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 at stat.math.ethz.ch
> > [mailto:r-help-bounces at 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 at stat.math.ethz.ch mailing list
> > https://stat.ethz.ch/mailman/listinfo/r-help
> > PLEASE do read the posting guide!
> > http://www.R-project.org/posting-guide.html
> > 
> >
> 
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
>




More information about the R-help mailing list