我试图用不包括负值的ggplot2 geom_smooth绘制带有标准误差(se)的线性回归图。不幸的是,使用scale_y_continuous会截断部分标准错误填充。如何才能使se填充区域顺利地在y=0结束?
参见示例(它使用y=10而不是y=0,但进程相同):
ymax<-max(mtcars$mpg)
myplot<- ggplot(data=mtcars, aes(x=wt, y=mpg)) +
geom_smooth(method=lm, se=TRUE,fill = "#3399FF", colour="#0000FF",size =1) +
geom_point(shape=20, size=2) +
scale_y_continuous(limits = c(10, ymax))
suppressMessages(print(myplot)) 我希望我可以张贴图表,但我刚刚加入堆栈溢出,没有足够的声誉点来发布图片。该图显示了回归线,如预期的以y=10结尾,但se填充结束为垂直边缘(而不是水平与应排除se的线)。谢谢,很抱歉我不能发这张照片
发布于 2014-11-18 00:26:25
我认为您希望加载scales包(library("scales"))并将scale_y_continuous公式更改为
scale_y_continuous(limit=c(10,ymax),oob=squish)你的另一个选择是
+ coord_cartesian(ylim = c(10, ymax)) 发布于 2016-04-14 22:17:40
我们现在需要的是新版本的ggplot:
scale_y_continuous(limit=c(10,NA),oob=squish)https://stackoverflow.com/questions/26982165
复制相似问题