0

我正在尝试创建从 Cox 回归分析得出的几个置信区间的森林图。该图起初表现良好,但是当我添加具有大置信区间的新数据时,森林图现在看起来非常混乱。有没有办法让情节不那么混乱,例如将 x 轴切割成某个值并使大的置信区间超出比例?非常感谢您的帮助。

我尝试过对数据进行日志转换,但这并没有解决问题。

示例数据(其中 condition 是一个标记,Compartment 是分组变量)。

Condition   RiskRatio   UpperLimit  LowerLimit  Compartment
8   0,939   1,363   0,647   Tumour
9   0,484   0,996   0,236   Tumour
10  1,124   1,632   0,775   Tumour
11  12,616  56,146  2,835   Tumour
12  0,981   3,092   0,311   Tumour
13  0,875   1,272   0,603   Tumour
8   1,264   0,871   1,836   Stroma
9   1,054   2,02    0,55    Stroma
10  0,957   1,388   0,659   Stroma
11  1,34    5,431   0,33    Stroma
12  0,683   4,896   0,095   Stroma
13  0,743   1,081   0,511   Stroma
8   1,129   1,639   0,777   1tot
9   0,665   0,391   1,13    1tot
10  0,972   1,411   0,67    1tot
11  2,441   6,648   0,896   1tot
12  0,981   3,092   0,311   1tot
13  0,806   1,171   0,555   1tot
p = ggplot(data=RR_data,
           aes(x = Compartment,y = RiskRatio, ymin = LowerLimit, ymax = UpperLimit ))+
  geom_pointrange(aes(col=Compartment))+ theme_classic() +
  geom_hline(aes(fill=Compartment),yintercept =1, linetype=2)+
  xlab('Immune cell population')+ ylab("Hazard Ratio (95% Confidence Interval)")+
  geom_errorbar(aes(ymin=LowerLimit, ymax=UpperLimit,col=Compartment),width=0.5,cex=0.5)+ 
  facet_wrap(~Condition,strip.position="left",nrow=9,scales = "free_y") +
  theme(plot.title=element_text(size=10,face="bold"),
        axis.text.y=element_blank(),
        axis.ticks.y=element_blank(),
        axis.text.x=element_text(face="bold"),
        axis.title=element_text(size=10,face="bold"),
        strip.text.y = element_text(hjust=0,vjust = 1,angle=180,face="bold"))+
        scale_y_continuous(breaks=c(0.25,0.5,0.75,1,1.25,1.5,1.75,2,2.25,2.5,3,3.5))+
  coord_flip()
p 
4

0 回答 0