我正在尝试使用格子图形绘制贝叶斯先验和后验分布。我想将两种分布都放在一个面板中,以便直接比较。
我整天都在尝试不同的解决方案,包括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
但是只有几个结果,它们似乎与我无关。
所以,这是我的问题:任何人都可以用这种方法帮助我实现我想要的吗?