3

我使用fitdist包中的函数fitdistrplus来获得适合我的数据的最佳分布并绘制ppcomp图形,我使用示例代码?fitdistrplus替换我的数据和代码。

data(groundbeef)
serving <- groundbeef$serving
fitW <- fitdist(serving, "weibull")
fitg <- fitdist(serving, "gamma")
fitln <- fitdist(serving, "lnorm")
ppcomp(list(fitW, fitg, fitln), legendtext=c("Weibull", "gamma", "lognormal"))

ppcomp

到目前为止,一切都很好!但是看图片的左下角,有一些空间,或者轴不是从零开始的!

所以我用谷歌搜索并找到了两种方法:一种方法在基础图中,xaxs并被yaxs使用。

set.seed(1234)
x <- runif(100, min=0, max=100)
y <- runif(100, min=0, max=100)
plot(x,y,xaxs="i",yaxs="i",xlim=c(0,100),ylim=c(0,100))

基图

ggplot2中的另一种方法expand=c(0,0)被使用。

df <- data.frame(x=x,y=y)
ggplot(df,aes(x,y)) + geom_point() + scale_x_continuous(expand = c(0,0)) + scale_y_continuous(expand = c(0,0))

扩张

所以我尝试用这两种方法来画图ppcomp

ppcomp(list(fitW, fitg, fitln), legendtext=c("Weibull", "gamma", "lognormal"),xaxs="i",yaxs="i")

但发生错误:

Error in legend(x = xlegend, y = ylegend, bty = "n", legend = legendtext,  : 
  unused arguments (xaxs = "i", yaxs = "i")

那么,我应该怎么做才能在没有错误的情况下完成目标,或者什么是正确的代码?

4

1 回答 1

1

问题似乎是(接受额外...参数ppcomp的)中的参数被赋予两者plot并且legendlegend知道如何处理xaxs.

选项是:

1)运行ppcompxaxs这将制作情节,然后legend单独添加。

2) 用于从命令fix(ppcomp)中删除。...legend

3) 重新编码ppcomp以根据需要使用ggplot和设置选项。

于 2016-07-04T08:28:01.483 回答