首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >R中带误差条的叠加条形图

R中带误差条的叠加条形图
EN

Stack Overflow用户
提问于 2014-05-08 10:11:33
回答 2查看 4.1K关注 0票数 0

我想用错误条来绘制一个堆叠的条形图。我有一个有五个变量的数据框架。Var1包含了处理对Var2中三种不同物种的影响。治疗的效果用可变的value进行。变量startend包含错误条的值。我想用Var1和Var2的顺序应该相同的方式绘制一个堆叠的条形图。就像这样:

这个数字只是一个例子。一些示例数据:

代码语言:javascript
运行
复制
Var1    Var2    value   start   end
Eff1    spe1    0.73    0.72    0.74
Eff2    spe1    0.25    0.24    0.26
Eff3    spe1    0.007   0.006   0.008
Eff1    spe2    0.69    0.68    0.7
Eff2    spe2    0   0   0
Eff3    spe2    0.3 0.29    0.31
Eff1    spe3    0.78    0.77    0.79
Eff2    spe3    0   0   0
Eff3    spe3    0.212   0.2 0.22

表中的值与上面的数字不匹配。谢谢你的建议。

EN

Stack Overflow用户

回答已采纳

发布于 2014-05-08 10:39:53

代码语言:javascript
运行
复制
df <- read.table(text="
Var1    Var2    value   ybegin  yend
Eff1    spe1    0.73    0.72    0.74
Eff2    spe1    0.25    0.24    0.26
Eff3    spe1    0.007   0.006   0.008
Eff1    spe2    0.69    0.68    0.7
Eff2    spe2    0   0   0
Eff3    spe2    0.3 0.29    0.31
Eff1    spe3    0.78    0.77    0.79
Eff2    spe3    0   0   0
Eff3    spe3    0.212   0.2 0.22", header = T)
str(df)

df[df$Var1 == "Eff2", "ybegin"] <- df[df$Var1 == "Eff2", "ybegin"] + df[df$Var1 == "Eff1", "value"]
df[df$Var1 == "Eff2", "yend"] <- df[df$Var1 == "Eff2", "yend"] + df[df$Var1 == "Eff1", "value"]
df[df$Var1 == "Eff3", "ybegin"] <- df[df$Var1 == "Eff3", "ybegin"] + df[df$Var1 == "Eff2", "ybegin"]
df[df$Var1 == "Eff3", "yend"] <- df[df$Var1 == "Eff3", "yend"] + df[df$Var1 == "Eff2", "yend"]

library(ggplot2)
dodge <- position_dodge(width = 0.9)
cols <- c("black", "white", "darkgrey") 
limits <- aes(ymax = yend , ymin = ybegin)
ggplot(df, aes(x = Var2, y = value, fill = Var1)) + geom_bar(stat="identity", color = "black") + 
  scale_fill_manual(values = cols) +
  geom_errorbar(limits, colour = "red", width = 1,  position = dodge) + 
  theme_bw() +
  theme(panel.grid.major = element_blank() ,panel.grid.minor = element_blank()) 

票数 2
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23538804

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档