【问题标题】:ggplot on point estimates and confidence intervals关于点估计和置信区间的ggplot
【发布时间】:2015-05-28 15:29:29
【问题描述】:

我正在尝试使用 ggplot 绘制数据框,该数据框看起来像 http://www.ats.ucla.edu/stat/r/dae/logit.htm 底部的图。

       a<-data.frame(Year=c("2012","2012","2012","2013","2013","2013","2014","2014","2014"),
          Engagement=rep(c("low","med","high"),3),
         cost=c(4464.88,4690.14,4342.72,5326.63,5000.03,3967.02,4646.27,4282.38,3607.79),
         lower=c(4151.4,5027.51,4095.73,4366.82,4682.85,3715.86,3775.25,3642.41,3235.43),
         upper=c(4778.35,5625.75,5196.81,5013.45,5317.2,4848.89,4910.19,4291.64,3980.14))

我试过了:

k<-ggplot(a,aes(x=Year,y=cost))
k+geom_ribbon(aes(ymin=lower,ymax=upper,fill=Engagement),alpha=0.2)+
geom_pointrange(aes(x=Year,y=cost,ymin=lower,ymax=lower),size=1,width=0.2,color="blue")

感谢所有帮助。

我也试过了:

pd <- position_dodge(0.1)
k<-ggplot(a,aes(x=Year,y=cost))
k+geom_ribbon(aes(ymin=lower,ymax=upper,fill=Engagement),alpha=0.2)+
  geom_line(position=pd,aes(color=Engagement))

错误信息:

ymax not defined: adjusting position using y instead
geom_path: Each group consist of only one observation. 
Do you need to adjust the group aesthetic?

【问题讨论】:

    标签: r ggplot2


    【解决方案1】:

    谢谢大家,问题解决了:

    k+geom_line(aes(group=Engagement,color=Engagement))+
      geom_errorbar(aes(ymin=lower,ymax=upper,color=Engagement,width=0.2))
    

    【讨论】:

    • 通常鼓励回答您自己的问题作为帮助未来用户的一种方式。但要成为一个有用的好答案,您需要解释 something 问题是什么以及为什么会这样。如果真的是哈里森的代码解决了这个问题,那么你应该“接受”那个答案(通过点击旁边的复选框),不要为自己的答案而烦恼。
    【解决方案2】:

    我假设“看起来”是指将功能区添加到图表中。如果是这样,那么问题源于a data.frame 中的Year 变量。它目前有因子类,它需要是数字的。

    如果您在调用 ggplot 图表之前添加它,您应该会看到功能区:

    a$Year <- as.numeric(a$Year)
    

    您还可以将a 的整个分配修改为以下内容:

    a<-data.frame(Year=as.numeric(c("2012","2012","2012","2013","2013","2013","2014","2014","2014")),
                  Engagement=rep(c("low","med","high"),3),
                  cost=c(4464.88,4690.14,4342.72,5326.63,5000.03,3967.02,4646.27,4282.38,3607.79),
                  lower=c(4151.4,5027.51,4095.73,4366.82,4682.85,3715.86,3775.25,3642.41,3235.43),
                  upper=c(4778.35,5625.75,5196.81,5013.45,5317.2,4848.89,4910.19,4291.64,3980.14))
    

    【讨论】:

      猜你喜欢
      • 2019-03-12
      • 2015-09-14
      • 2019-02-28
      • 2021-02-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-06
      • 2015-10-07
      相关资源
      最近更新 更多