【问题标题】:Create geom_ribbon for min-max range为最小-最大范围创建 geom_ribbon
【发布时间】:2013-05-14 23:25:07
【问题描述】:

给定以下数据:

df<-data.frame(
  year=(1996:2000),
  a=c(2,1.5,1.5,2,3),
  b=c(2,2,2,3,4),
  c=c(2,3,3,1,1))

用ggplot:

  ggplot(df,aes(x=year))+
    geom_line(aes(y=a))+
    geom_line(aes(y=b))+
    geom_line(aes(y=c))

看起来像这样:

如何。我可以创建一个始终显示最小值和最大值之间区域的功能区(把它想象成一个 min-max-range),让它看起来像这样:

【问题讨论】:

    标签: r ggplot2


    【解决方案1】:

    先计算最小值和最大值怎么样:

    df$min <- apply(df[, -1], 1, min)
    df$max <- apply(df[, -1], 1, max)
    

    然后简单地绘制功能区:

    ggplot(df, aes(x = year, ymin = min, ymax = max)) + geom_ribbon()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-30
      • 1970-01-01
      • 1970-01-01
      • 2023-03-24
      相关资源
      最近更新 更多