GGR图中的特定条形图

GGR图中的特定条形图,r,plot,ggplot2,legend,R,Plot,Ggplot2,Legend,你好,我将最后一次尝试 我正在尽最大努力绘制一个条形图,如下图所示: 然而,使用R似乎是不可能的 有什么想法吗? 提前感谢, 彼得 附上我使用的代码 groupe2<-rep(c(rep("P",4),rep("I",4)),2) groupe<-rep(c("PPP","PPI","PIP","PII","IPP","IPI","IIP","III"),2) OR_A<-c(1.00,0.86,0.88,0.90,0.77,0.68,0.77,0.70) ICinf_A&l

你好,我将最后一次尝试

我正在尽最大努力绘制一个条形图,如下图所示: 然而,使用R似乎是不可能的

有什么想法吗? 提前感谢,

彼得

附上我使用的代码

groupe2<-rep(c(rep("P",4),rep("I",4)),2)
groupe<-rep(c("PPP","PPI","PIP","PII","IPP","IPI","IIP","III"),2)
OR_A<-c(1.00,0.86,0.88,0.90,0.77,0.68,0.77,0.70)
ICinf_A<-c(NA,0.70,0.72,0.76,0.60,0.50,0.61,0.61)
ICsup_A<-c(NA,1.06,1.07,1.06,1.00,0.92,0.96,0.81)
OR_B<-c(1.00,0.97,1.01,0.81,0.73,0.69,0.61,0.58)
ICinf_B<-c(NA,0.78,0.77,0.62,0.61,0.57,0.50,0.52)
ICsup_B<-c(NA,1.20,1.28,1.05,0.81,0.82,0.71,0.65)
OR_C<-c(1.00,1.03,0.86,0.65,0.68,0.58,0.47,0.37)
ICinf_C<-c(NA,0.84,0.67,0.50,0.59,0.49,0.40,0.33)
ICsup_C<-c(NA,1.27,1.10,0.86,0.78,0.69,0.56,0.41)
Cohort<-c(rep(" PC",8), rep("RIC",8))#, rep("RIC",8))

OR<-c(OR_A,OR_B)#,OR_C)
ICinf<-c(ICinf_A,ICinf_B)#,ICinf_C)
ICsup<-c(ICsup_A,ICsup_B)#,ICsup_C)

rm(dataOR)
dataOR<-data.frame(OR,groupe,Cohort,groupe2,ICinf,ICsup)

names(dataOR)
dataOR[, "groupe"] <- factor(dataOR[, "groupe"] , 
                             levels = c("PPP","PPI","PIP","PII","IPP","IPI","IIP","III"))

##########

library(ggdag)
ggplot(dataOR, aes(fill=outcome, y=OR, x=groupe)) +
  geom_bar(position="dodge", stat="identity", color = "gray95", size = 0.25) + 
  # scale_fill_brewer(palette="Blues")+
  scale_fill_manual(values = RColorBrewer::brewer.pal(5, "Blues")[3:5]) +
  geom_errorbar(aes(ymin=ICinf, ymax=ICsup), width=.4, position=position_dodge(.9))+
  geom_hline(yintercept=1) +
  geom_point(position = position_dodge(0.9), size = 0.5, show.legend = F) +
  scale_y_continuous(expand = expand_scale(mult = c(0, 0.05))) +
  facet_wrap(~groupe, nrow = 1, scales = "free_x") +
  labs(fill = NULL) +
  theme(legend.position = "top", 
        legend.key.height = unit(0.2, "cm"), 
        legend.background = element_rect(color = "black", size = 0.4), 
        axis.line = element_line(color = "black"),
        axis.text.x = element_blank(),
        axis.ticks = element_blank(),
        panel.grid.major.x = element_blank(),
        axis.title = element_text(face = "bold"))

group2这与您之前的问题有何不同?为什么建议的答案不能解决您的问题?您在哪一个具体步骤上遇到困难?谢谢您的关注。在前面的回答中,没有实现哈希的解决方案。我的观点是我想要一个两级图例(颜色+散列)。@Peter引用Hadley关于交叉阴影/纹理填充的话:“目前不可能,因为网格(ggplot2用于实际绘制的图形系统)不支持纹理。对不起!”有一些黑客解决方案,但没有更多。