更新:
我已经解决了我的问题。我正在寻找geom_polygon绘制正常和逻辑分布
coord_cartesian(xlim = c(800, 2100), ylim = c(0, 0.0021))
感谢每一位试图帮助!
问题是:
我想绘制一个正常和逻辑分布之间的区别是一个很好的图片。我已经达到了这一点:
x=seq(1000,2000,length=200)
dat <- data.frame(
norm = dnorm(x,mean=1500,sd=200),
logistic = dlogis(x,location=1500,scale=200), x = x
)
ggplot(data=dat, aes(x=x)) +
geom_polygon(aes(y=norm), fill="red", alpha=0.6) +
geom_polygon(aes(y=logistic), fill="blue", alpha=0.6) +
xlab("") + ylab("") +
opts(title="Logistic and Normal Distributions") +
scale_x_continuous(expand = c(0, 0)) +
scale_y_continuous(expand = c(0, 0))
但逻辑的一个是“切”在底部。我认为我应该做的就是绘制这个分布从0到3000例如但只显示1000-2000。
任何线索如何做到这一点?
我试图scale_x_continuous(限= C(1000,2000)),但是,这并不工作
UPDATE:
我已经更新了我的代码,所以我的传说,现在它看起来是这样的:
x=seq(700,2300,length=200)
dat2 <- data.frame(x=x)
dat2$value <- dnorm(x,mean=1500,sd=200)
dat2$type <- "Normal"
dat1 <- data.frame(x=x)
dat1$value <- dlogis(x,location=1500,scale=200)
dat1$type <- "Logistic"
dat <- rbind(dat1, dat2)
ggplot(data=dat, aes(x=x, y=value, colour=type, fill=type)) + geom_polygon(alpha=0.6) + scale_y_continuous(expand = c(0, 0))