如何修改累积发病率图的分组名称并调整P值显示位置
解决累积发病率图的两个问题
1. 修改分组显示名称
有两种实用方法:
方法一:提前将分组变量转为带标签的因子
绘图前先处理数据,把编码值替换为友好名称:
m.data1$tx_covid <- factor(m.data1$tx_covid, levels = c("你的编码1", "你的编码2"), # 替换为实际编码值 labels = c("分组名称1", "分组名称2")) # 替换为想要显示的名称
之后运行原绘图代码即可生效。
方法二:绘图时直接指定标签
若不想修改原始数据,可在绘图流程中通过颜色/填充刻度设置标签:
cuminc(Surv(dias_hosp_1, hosp_d28_todas_causas) ~ tx_covid, data = m.data1) %>% ggcuminc() + labs( x = "Days", y = "All-cause 28-day hospitalization" ) + scale_color_discrete(labels = c("分组名称1", "分组名称2")) + # 对应分组编码顺序 scale_fill_discrete(labels = c("分组名称1", "分组名称2")) + # 填充标签与颜色标签保持一致 add_confidence_interval() + add_risktable()+ add_pvalue()
2. 将P值移至图内
add_pvalue()支持通过x和y参数指定显示位置,直接设置坐标即可:
cuminc(Surv(dias_hosp_1, hosp_d28_todas_causas) ~ tx_covid, data = m.data1) %>% ggcuminc() + labs( x = "Days", y = "All-cause 28-day hospitalization" ) + # 可添加上述分组标签修改代码 add_confidence_interval() + add_risktable()+ add_pvalue(x = 10, y = 0.8) # 调整x/y值到图内目标位置,如第10天、累积发病率0.8处
如需更精准对齐,可搭配hjust/vjust参数,例如add_pvalue(x = 10, y = 0.8, hjust = 0, vjust = 0)。
内容的提问来源于stack exchange,提问作者Sandra R
相关产品推荐
相关产品推荐

