使用survminer::ggsurvplot_facet的panel.labs如何去掉分面参数前缀
ggsurvplot_facet分面标签去除变量名前缀的解决方案
ggsurvplot_facet默认调用ggplot2分面逻辑时,会默认同时展示分面变量名和对应取值,因此会出现Place: 、Year: 这类前缀,可通过以下两种方式解决:
方法1:绘图时指定labeller参数(推荐)
在原有绘图代码中新增labeller = label_value参数即可,该参数是ggplot2内置的标签配置,作用是仅渲染分面变量的取值,不显示变量名。
注意你现有代码中panel.labs的键名需要和facet.by的变量名保持一致,你当前写的Lieu_libelle和facet.by中指定的Place不匹配,会导致自定义标签不生效,修正后完整代码如下:
library(survminer) library(ggplot2) surv_plot <- ggsurvplot_facet(fit, matrix_surv, facet.by = c("Place","Year"), panel.labs = list( Place = c("Austria","Belgium","Denmark","Finland","Italy"), Year = c("2018", "2019", "2020", "2021") ), # 新增该行去除变量名前缀 labeller = label_value)
方法2:修改已生成的绘图对象
如果已经生成surv_plot对象,无需重新运行绘图逻辑,直接覆盖分面的标签配置即可:
# 覆盖原有分面的标签规则 surv_plot$plot <- surv_plot$plot + facet_grid( rows = vars(Place), cols = vars(Year), labeller = label_value ) # 输出修改后的图 surv_plot
内容的提问来源于stack exchange,提问作者Mata
相关产品推荐
相关产品推荐

