如何在ggsurvplot中修改带刻度的轴线粗细?
修改ggsurvplot主图带刻度的轴线粗细
你当前的代码仅通过tables.theme设置了风险表的轴线粗细,主图的轴线需要通过ggtheme参数单独配置——因为tables.theme只作用于风险表组件,无法影响主图样式。
解决方法
通过ggtheme参数为主图设置主题样式,在其中指定axis.line.x和axis.line.y的粗细;同时保留tables.theme的设置来调整风险表的轴线,实现两者的统一修改。
修改后的完整代码
library(survminer) data <- data.frame(time =c(1,2,3,4), status=rep(c(1,0),4), n=c(1,2,3,4), grp = c(1,1,0,0)) obj <- Surv(time = data$time, event=data$status) fit <- survfit(obj ~ grp, data = data) ggsurvplot( fit, data = data, xlim = c(0, 60), break.x.by = 20, xlab = "Day", ylab = "Survival probability", risk.table = "abs_pct", font.x = c(12, face = "bold"), font.y = c(12, face = "bold"), font.tickslab = c(12), font.legend = c(12), risk.table.title = "RISK", risk.table.col = "black", size = 1, # 配置主图的轴线粗细 ggtheme = theme_bw() + theme( axis.line.x = element_line(size = 1.5), axis.line.y = element_line(size = 1.5) ), # 配置风险表的轴线粗细 tables.theme = theme_cleantable() + theme( plot.title = element_text(size = 40), axis.line.y = element_line(size = 1.5) ) )
关键说明
ggtheme:控制主图的整体主题样式,通过theme()中的axis.line.x和axis.line.y设置主图x、y轴的粗细。tables.theme:仅控制风险表的样式,保持原有设置即可调整风险表的轴线。
内容的提问来源于stack exchange,提问作者geek45
相关产品推荐
相关产品推荐

