2015-11-03 81 views
2

我在R中使用fitdistrplus軟件包,試圖製作一個很好的4格分佈圖,就像作者發表的論文(J. of Statistical 。軟件,第64卷,第4期):用fitdistrplus在R中正確顯示4個面板分佈圖的圖例R

Delignette-Muller et al., 2015

然而,當我使用它們呈現在他們的論文具有不同顏色編碼的線相關聯的文本值相同的代碼/曲線剛放置任意和你不知道哪個顏色對應哪個系列:

par(mfrow = c(2, 2)) 
plot.legend <- c("Weibull", "lognormal", "gamma") 
denscomp(list(fw, fln, fg), legendtext = plot.legend) 
qqcomp(list(fw, fln, fg), legendtext = plot.legend) 
cdfcomp(list(fw, fln, fg), legendtext = plot.legend) 
ppcomp(list(fw, fln, fg), legendtext = plot.legend) 

Real world version

我也試過用, xlegend = "bottomright"選項。

回答

2

如果您希望圖例在每個圖中都可見,您可以手動操作位置。下面提供了一些示例代碼。此外,使用cex縮放圖例將避免圖例重疊大部分情節。確切的傳說位置將基於您的數據。

library(fitdistrplus) 
x <- exp(rnorm(100,0,1)) 

fw <- fitdist(x,distr="weibull") 
fln <- fitdist(x,distr="lnorm") 
fg <- fitdist(x,distr="gamma") 


par(mfrow = c(2, 2)) 
plot.legend <- c("Weibull", "lognormal", "gamma") 
denscomp(list(fw, fln, fg) 
     , legendtext = plot.legend 
     ,xlegend=10 
     ,ylegend=0.5 
     ,cex=0.7) 
qqcomp(list(fw, fln, fg) 
     , legendtext = plot.legend 
     ,xlegend=8 
     ,ylegend=6 
     ,cex=0.7) 
cdfcomp(list(fw, fln, fg) 
     , legendtext = plot.legend 
     ,xlegend=8 
     ,ylegend=0.3 
     ,cex=0.7) 
ppcomp(list(fw, fln, fg) 
     , legendtext = plot.legend 
     ,xlegend=0.7 
     ,ylegend=0.3 
     ,cex=0.7) 

enter image description here