我的桌子看起来像这样:
name mean median confi_low confi high
1 factor1 865.04343 132.1322 1.2720944 18.163728 1
2 factor2 21.643254 98.07801 3.5228677 987.27607 1
3 factor3 5.14328320 -98.56740 2.8130112 95.79901 1
4 factor 4 112.744184 9.2642842 2.4775374 953.5526 2
5 factor 5 -6.493834 5.01283721 3.3698789 10.10956 2
我想创建一个带有误差图的交叉图,其中confi_low为下边界,confi_high为上边界,并标记了均值。此外,我想根据使用年限对地块进行分组,并将两组彼此分开,但是所有地块都应在一张图中。此外,在每个组中,地块应按升序排序。这是我的方法:
ggplot(graphdata, aes(x = fct_reorder(name, mean), y = mean, group = factor)) +
geom_hline(yintercept=0, color = "black") +
geom_col(width = 0.5, color = "grey", alpha = 0.2) +
geom_point(size=2.5) +
geom_errorbar(aes(ymin = confid_low, ymax = confi_high), width = 0.2) +
theme_classic()
有人可以帮我吗?
答案 0 :(得分:0)
您可以尝试类似的方法。我创建了factor2
,以显示如何创建多个图:
graphdata %>% mutate(factor2=rep(c(1,2),5)) -> graphdata
ggplot(graphdata, aes(x = reorder(name,serialcorrelation), y = serialcorrelation, group = factor)) +
geom_hline(yintercept=0, color = "black") +
geom_col(width = 0.5, color = "grey", alpha = 0.2) +
geom_point(size=2.5) +
geom_errorbar(aes(ymin = confidenceint_low, ymax = confidenceint_high), width = 0.2) +facet_wrap(~factor2)+theme(axis.text.x = element_text(angle=90))