[R密度图:如何从x轴的实线增加了密度曲线

问题描述:

我有一个密度图的顶部绘制使用:[R密度图:如何从x轴的实线增加了密度曲线

plot(density(x)) 

我感兴趣的东西做的是创造一个从x轴到曲线上相应的点,从x = 5行开始。

像这样:

example

可以通过第一存储密度值中的对象,然后检索从该对象的xy元件做到这一点。在下面的例子中,我使用findInterval检索y值对于给定的x值:

x <- rnorm(1000) # Sample data 
y <- density(x) # Calculate and store density 

x0 <- 2 # Desired position on x-axis 
y0 <- y$y[findInterval(x0, y$x)] # Corresponding y value 

plot(density(x)) 
segments(x0, 0, x0, y0) 

enter image description here

+0

我知道它与你的代码一起工作,现在我正在与我的东西弄清楚。谢谢。 – Travis

如果它真的z分数那么就实际上画出密度函数dnorm()。它也像你想有你的实际x轴为0

zmax <- 4 
curve(dnorm, -zmax, zmax, xaxt = 'n', bty = 'n') 
axis(1, -zmax:zmax, pos = 0) 

要在您的线画,你可以再次使用dnorm功能。

zscore <- 1.65 
segments(zscore, 0, zscore, dnorm(zscore)) 

你也甚至遮阳出来很好... :)

x <- seq(zscore, zmax, 0.01) 
y <- c(0, dnorm(x)[1:(length(x)-2)],0) 
polygon(x,y, density = 20) 

您还可以使用segmentstext命令,将正确的标签在你的什么阴影图和无阴影地区的意思。 thegraph