我正在尝试使用晶格图形绘制贝叶斯先验和后验分布。我希望在一个面板中有两个发行版,以便进行直接比较。
我整天尝试过不同的解决方案,包括qqmath
,但我没有让它们发挥作用。这是迄今为止最成功的尝试:
# my data
d <- dgamma(seq(from=0.00001,to=0.01,by=0.00001),shape = .1, scale = .01)
# my plot
densityplot(~d,
plot.points=FALSE,
panel = function(x,...) {
panel.densityplot(x,...)
panel.mathdensity(
dmath = dgamma,
args = list(shape = .1, scale=.01)
)
}
)
尽管代码很好地运行,但它并没有达到我想要的效果。它绘制了后验(d
)而不是先验。
我向stop("foo")
添加了densityplot(...)
,以便在发生错误时停止执行,并在线搜索错误消息:
Error in eval(substitute(groups), data, environment(formula)) : foo
但只有少数结果,而且它们似乎与我无关。
所以,这是我的问题:任何人都可以帮我用这种方法来实现我的目标吗?