【发布时间】:2013-10-18 14:30:10
【问题描述】:
我正在尝试使用格子图形绘制贝叶斯先验和后验分布。我想将两种分布都放在一个面板中,以便直接比较。
我整天都在尝试不同的解决方案,包括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
但只有几个结果,似乎与我无关。
所以,这是我的问题:谁能帮助我用这种方法来实现我想要的?
【问题讨论】: