我有数据,我为(ur_memr_t $ up ...)做了直方图。然后我使用fitdistr来拟合数据的指数dist。我捕获了拟合分布的参数并生成了一些随机变量。然后我为exp随机变量制作了密度曲线。我想将密度放在直方图上。以下代码抛出此错误
exp_data <- data.frame( x = rexp(3000, rate = 0.0144896182))
ggplot(data = ur_memr_t, aes(ur_memr_t$updated_days_to_next_ur)) +
geom_histogram() + ggplot(exp_data, aes(x)) + geom_density()
Error in p + o : non-numeric argument to binary operator
In addition: Warning message:
Incompatible methods ("+.gg", "Ops.data.frame") for "+"
如果我跑
ggplot(data = ur_memr_t, aes(ur_memr_t$updated_days_to_next_ur)) +
geom_histogram()
和
ggplot(exp_data, aes(x)) + geom_density()
单独地,他们产生正确的情节。为什么他们不能一起工作并在另一个上面绘制一个?
答案 0 :(得分:0)
我认为它应该可以工作,但你只能有一个ggplot语句。尝试这样的事情:
g = ggplot(data = ur_memr_t, aes(ur_memr_t$updated_days_to_next_ur))
g = g + geom_histogram(aes(ur_memr_t$updated_days_to_next_ur))
g = g + geom_density(data = exp_data, aes(x))
希望有所帮助