2015-10-06 86 views
2

我有一些问题,试图通过逆高斯分布在单个图中绘制多个可靠性函数。我需要的功能是线条,我得到的只是点,当试图设置type =“l”时,它恰好是一个乱七八糟的线条,无处不在。为什么不在一个图中绘制多个函数?

下面是代码

library("statmod") 
x<-rinvgauss(90,0.000471176,0.0000191925) 
y<-rinvgauss(90,0.000732085,0.000002982015) 
z<-rinvgauss(180,0.000286672,0.00000116771) 

den<-pinvgauss(x,0.000471176,0.0000191925) 
dens<-pinvgauss(y,0.000732085,0.000002982015) 
densi<-pinvgauss(z,0.000286672,0.00000116771) 

rel<-1-den 
reli<-1-dens 
relia<-1-densi 

plot(x,rel, xlim=c(0,0.002), col="red") 
points(y,reli, col="blue") 
points(z,relia, col="black") 

我真的很感激任何帮助在此!

enter image description here

+3

欢迎来到社区!你应该接受罗恩的回答,以便他能够得到答案。 – atiretoo

回答

2

问题是你的X,Y,Z值不排序...

library("statmod") 
x <- sort(rinvgauss(90,0.000471176,0.0000191925)) 
y <- sort(rinvgauss(90,0.000732085,0.000002982015)) 
z <- sort(rinvgauss(180,0.000286672,0.00000116771)) 

den <- pinvgauss(x,0.000471176,0.0000191925) 
dens <- pinvgauss(y,0.000732085,0.000002982015) 
densi <- pinvgauss(z,0.000286672,0.00000116771) 

rel <- 1-den 
reli <- 1-dens 
relia <- 1-densi 

plot(x,rel, xlim=c(0,0.002), col="red", type="l") 
lines(y,reli, col="blue") 
lines(z,relia, col="black") 
+0

非常感谢!这就对了!这是问题所在。 –

1

您的值进行排序。这应该工作:

x<-sort(rinvgauss(90,0.000471176,0.0000191925)) 
    y<-sort(rinvgauss(90,0.000732085,0.000002982015)) 
    z<-sort(rinvgauss(180,0.000286672,0.00000116771)) 

den<-sort(pinvgauss(x,0.000471176,0.0000191925)) 
dens<-sort(pinvgauss(y,0.000732085,0.000002982015)) 
densi<-sort(pinvgauss(z,0.000286672,0.00000116771)) 

rel<-1-den 
reli<-1-dens 
relia<-1-densi 

plot(x,rel, xlim=c(0,0.002), col="red",type="l") 
lines(y,reli, col="blue") 
lines(z,relia, col="black") 
+0

谢谢,那是问题所在! –

+1

哈我刚刚看到有人已经回答了同样的问题^^你应该选择以前的答案:) – Ouistiti

相关问题