2015-10-06 32 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

相關問題