修改geom_ribbon边框

km5*_*041 8 plot r ggplot2

我正在用下面的代码绘制一系列的手段和标准偏差,我正在尝试使用geom_ribbon来显示sd,见下文.

由于重要的重叠,我想为色带添加一个边框,这个色带与相应的变量颜色相同但是是一条虚线,但我无法弄清楚代码中的哪个位置.我知道"color"和"linetype"命令以某种方式涉及......

谢谢!

graph.msd <- ggplot(data=g.data, aes(x=quarter,y=mean,group=number)) 
graph.msd <- graph.msd + geom_line(aes(colour = number),size=1)+geom_ribbon(aes(ymin=mean-sd,ymax=mean+sd,fill=number),linetype=2,alpha=0.1)
Run Code Online (Sandbox Code Playgroud)

mne*_*nel 13

您需要将值传递 colourgeom_ribbon类似的东西

graph.msd <- graph.msd + 
 geom_line(aes(colour = number),size=1)+
 geom_ribbon(aes(ymin = mean-sd, ymax = mean+sd, 
                 fill = number,colour = number), linetype=2, alpha=0.1)
Run Code Online (Sandbox Code Playgroud)

具有可重复的示例(使用示例中的变体) ?geom_ribbon

huron <- data.frame(year = 1875:1972, level = as.vector(LakeHuron))
library(plyr) # to access round_any
huron$decade <- round_any(huron$year, 10, floor)

ggplot(huron, aes(x =year, group = decade)) + 
  geom_ribbon(aes(ymin = level-1, ymax = level+1, 
      colour = factor(decade), fill = factor(decade)), 
    linetype = 2, alpha= 0.1)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

  • 如何将“alpha”也应用到边框? (3认同)