我正在使用geom_density来绘制具有非常细的尾部的密度。我想限制y轴范围(因此分布的顶部将在屏幕外,尾部更清晰可见)但它在计算密度时丢弃了屏幕外的数据,而不仅仅是没有显示在屏幕外。
E.g。
这绘制了完整的分布,
testData = data.frame(counts=c(rep(1,5), 1:10))
ggplot(testData, aes(x=testData$counts))+geom_density()
但是当y范围受到限制时,看起来分布支持较小。
ggplot(testData, aes(x=testData$counts))+geom_density()+scale_y_continuous(limits=c(0,0.1))
如何在不丢弃数据的情况下“放大”y轴?
答案 0 :(得分:27)
我相信你正在寻找coord_cartesian():
ggplot(testData, aes(x=testData$counts))+geom_density()+coord_cartesian(ylim=c(0, 0.1))