R缩放y轴以适合黄土曲线

时间:2015-03-12 16:56:58

标签: r ggplot2

我想根据ggplot2的黄土函数减小Y-xis的比例,即使这意味着不会显示某些原始点。

问题是我事先不知道黄土函数的最大值是多少。我所拥有的只是各种原始数据集,有时这些数据集中的一些可能会有一个高峰,因此那些将我的黄土曲线压缩到图的底部,而我更关心黄土的显示曲线比显示原始数据(但必须显示这些原始数据,至少是那些接近黄土曲线的原始数据)

在这个例子中,蓝色黄土线从不高于2,而在2和3之间有许多点;通常情况下,我希望Y轴的顶部为2并抛弃那些极端原点。

library(ggplot2)
set.seed(34)
n <- 200
X <- runif(n)*8
Y <- sin(3*X) + cos(X^2) + rnorm(n, 0, 0.5)

myData <- data.frame(X,Y)
fit <- loess(Y~X,data=myData)
myData$pred <- predict(fit)

ggplot(myData, aes(X,Y))+
  geom_point()+
  stat_smooth(method="loess", se=F, size=3)+
  geom_line(aes(X,pred),colour="yellow")

1 个答案:

答案 0 :(得分:0)

你几乎就在那里,只需添加一个coord_cartesian电话

ggplot(myData, aes(X,Y))+
  geom_point()+
  stat_smooth(method="loess", se=F, size=3)+
  geom_line(aes(X,pred),colour="yellow") + 
  coord_cartesian(ylim=c(min(myData$pred)-.1, max(myData$pred)+.1))