【发布时间】:2016-08-25 00:45:33
【问题描述】:
我正在尝试在 ggplot2 中制作自己的直方图,在其中我为 ggplot2 提供向量中参数值的每个值的概率,而不是让它从单个向量中计算概率值本身。
玩具数据:
这是参数值
p <- seq(from = 0.05, to = 0.95, by = 0.1)
我给每一个都分配了一个权重
prior <- c(1, 5.2, 8, 7.2, 4.6, 2.1, 0.7, 0.1, 0, 0)
然后计算每个权重的先验概率
prior <- prior/sum(prior)
现在使用plot() 函数,我们可以使用这两个向量创建直方图
plot(p, prior, "h", ylab = "prior probability")
但是如何在 ggplot2 中获得类似的图表?
如果我尝试将这些放入数据框
gDF <- data.frame(p = p, priorProb = prior)
然后画出来
ggplot(gDF, aes(x = p, y = priorProb)) + geom_histogram()
我收到错误Error: stat_bin() must not be used with a y aesthetic,这是有道理的,因为通常对于直方图,ggplot 只使用单个向量。
任何帮助。
【问题讨论】: