如何在R中使用ggplot2创建带有3西格玛限值的折线图?
要使用ggplot2创建带有3西格玛限值的折线图,我们首先需要计算这些限值,然后才能创建图表。我们可以为此目的使用ggplot2的geom_ribbon函数,在其中可以将下限3西格玛限值传递给aes中的ymin参数,将上限3西格玛限值传递给aes中的ymin参数,我们还需要指定alpha,以便区分线条和限值的颜色。
示例
考虑以下数据框
> set.seed(14) > x<-1:20 > y<-rnorm(20,1,0.5) > df<-data.frame(x,y) > df
输出
x y 1 1 0.6690751 2 2 1.8594771 3 3 2.0608335 4 4 1.7485768 5 5 0.9819297 6 6 1.6159726 7 7 0.9675596 8 8 1.5344969 9 9 0.8115173 10 10 1.5215915 11 11 0.8085891 12 12 1.1497108 13 13 1.3371199 14 14 0.8535918 15 15 1.2440267 16 16 1.4414009 17 17 1.9313745 18 18 1.8058626 19 19 1.0677398 20 20 1.5440430
计算上下限
> df$Lower<-df$y-3*mean(df$y) > df$Upper<-df$y+3*mean(df$y)
加载ggplot2包并为y创建折线图
示例
> library(ggplot2) > ggplot(df,aes(x,y))+geom_line()
输出
创建带有3西格玛限值的折线图
示例
> ggplot(df,aes(x,y))+geom_line()+geom_ribbon(aes(ymin=Lower,ymax=Upper,alpha=0.1))
输出
广告