【发布时间】:2012-07-27 14:13:34
【问题描述】:
我必须将伽玛分布曲线叠加到其他类似幂律曲线的图中。 我首先以对数刻度绘制直方图的点
plot(log(pp$mids),log(pp$density))
然后我想叠加我的伽马分布曲线调用一个外部函数 gamma()
gamma <- function(X)
{
n <- length(X)
theta<-var(hh2$V1)/mean(hh2$V1)
kappa<-mean(hh2$V1)/theta
y<-rgamma(n,kappa,theta)
xx<-hist(y,plot=F)
curve(log(xx$density),add=T,col='violet',type='l')
return( c(kappa) )
}
但这会给我一个错误,因为 curve() 需要一条真正的曲线来绘制。我该怎么做?
【问题讨论】:
-
curve实际上并没有绘制真实曲线。它只是沿着表达式绘制一系列点并将它们链接起来。如果您尝试以下操作,您会看到这一点:curve(sin(x), -2*pi, 2*pi, type="p")尝试对您的数据执行类似的操作。制作输入和输出的数据框并绘制它。 -
有什么理由不想绘制
dgamma(data),使用curve还是不使用?
标签: r