如何使用Survminer包優(yōu)雅的繪制生存曲線?
#風(fēng)險(xiǎn)表也需要分割
#每一個(gè)facet plot item對應(yīng)一個(gè)風(fēng)險(xiǎn)表,水平垂直都分割ggsurv$table + facet_grid(rx ~ adhere, scales = "free")+ theme(legend.position = "none")
;蛘撸恳粋(gè)facet columns對應(yīng)一個(gè)風(fēng)險(xiǎn)表,只分割垂直方向tbl_facet <- ggsurv$table + facet_grid(.~ adhere, scales = "free")tbl_facet + theme(legend.position = "none")
#最終合并分割后生存曲線和風(fēng)險(xiǎn)表,主要應(yīng)用ggplot包的gridExtra函數(shù)
# 合并生存曲線和風(fēng)險(xiǎn)表g2 <- ggplotGrob(curv_facet)g3 <- ggplotGrob(tbl_facet)min_ncol <- min(ncol(g2), ncol(g3))#gridExtra::gtable_rbind表示合并表格g <-gridExtra::gtable_rbind(g2[, 1:min_ncol], g3[, 1:min_ncol], size="last")g$widths <- grid::unit.pmax(g2$widths, g3$widths)# 最終繪制于一張圖上grid::grid.newpage()grid::grid.draw(g)
#因圖片偏大,建議自行運(yùn)行代碼查看
3.主要函數(shù)arrange_ggsurvplots ()
3.1用法:
arrange_ggsurvplots(x, print = TRUE, title = NA, ncol = 2, nrow = 1, surv.plot.height = NULL, risk.table.height = NULL, ncensor.plot.height = NULL, ...)
3.2 參數(shù)詳解:
參數(shù)用法xggsurvplots的列表print邏輯值。如果為TRUE,則顯示排列的圖title圖片的標(biāo)題。默認(rèn)值為NAsurv.plot.height網(wǎng)格上生存點(diǎn)的高度,默認(rèn):0.75risk.table.height網(wǎng)格上風(fēng)險(xiǎn)表的高度,默認(rèn)值為0.25,當(dāng)risk.table=FALSE時(shí)忽略ncensor.plot.height刪失點(diǎn)的高度,當(dāng) ncensor.plot = TRUE時(shí)使用3.3 示例:
# 從lung數(shù)據(jù)庫和colon數(shù)據(jù)庫中分別構(gòu)建兩個(gè)生存曲線fit1<- survfit(Surv(time, status) ~ sex, data = lung)fit2<- survfit(Surv(time, status) ~ adhere, data = colon)# 圖1選擇fit1,圖2選擇fit2,先分別畫圖splots <-list()splots[[1]] <- ggsurvplot(fit1, data = lung, risk.table = TRUE, ggtheme = theme_minimal())splots[[2]]<- ggsurvplot(fit2, data = colon, risk.table = TRUE, ggtheme = theme_grey())# 合并在同一張圖中arrange_ggsurvplots(splots, print = TRUE, ncol = 2, nrow = 1, risk.table.height = 0.4)
# 也可以不輸出,直接保存pdf格式在指定文件夾res <- arrange_ggsurvplots(splots, print = FALSE)ggsave("myfile.pdf", res)
4.主要函數(shù)ggcoxzph()
4.1 用法:
ggcoxzph(fit, resid = TRUE, se = TRUE, df = 4, nsmo = 40, var, point.col = "red", point.size = 1, point.shape = 19, point.a(chǎn)lpha = 1, caption = NULL, ggtheme = theme_survminer(), ...)
4.2 參數(shù):
參數(shù)作用fitcox.zph類對象resid邏輯值,如果為TRUE,則殘差和擬合度包括在繪圖中se如果邏輯值為TRUE,則將在兩個(gè)標(biāo)準(zhǔn)誤差處添加置信區(qū)間df擬合曲線的自由度,df=2,表示線性擬合nsmo用來畫擬合的樣條平滑曲線點(diǎn)的數(shù)目4.3 示例:
#依舊使用 lung數(shù)據(jù)# 行cox回歸和ph檢驗(yàn)fit <- coxph(Surv(time, status) ~ sex + age, data = lung)ftest <- cox.zph(fit)# 查看cox回歸整體模型ftest
#畫所有變量ggcoxzph(ftest)
# 用指定變量順序和變量畫圖,font.main標(biāo)題的字體樣式ggcoxzph(ftest, var = c("age", "sex"), font.main = 10)
#Cox模型Ph檢驗(yàn)圖看法:(以上圖結(jié)果為例)
cox回歸模型cox.zph.fit,模型的整體檢驗(yàn)P值(GLOBAL)是0.194,大于0.05,說明模型整體滿足PH檢驗(yàn)。從上圖可以看出,二個(gè)變量的P值均大于0.05,說明每個(gè)變量均滿足PH檢驗(yàn)。上圖中實(shí)線是擬合的樣條平滑曲線(黑色實(shí)線),虛線表示擬合曲線上下2個(gè)單位的標(biāo)準(zhǔn)差(黑色虛線)。如果殘差曲線(紅色的點(diǎn))偏離2個(gè)單位的標(biāo)準(zhǔn)差則表示不滿足比例風(fēng)險(xiǎn)假定。從上圖中可見,各協(xié)變量滿足PH風(fēng)險(xiǎn)假設(shè)。?正常情況下,以上Schoenfeld殘差(圖中紅色的點(diǎn))應(yīng)該與時(shí)間無關(guān),如果殘差與時(shí)間有相關(guān)趨勢,則違反PH假設(shè)的證據(jù)。殘差圖上,橫軸代表時(shí)間,如果殘差均勻的分布,則表示殘差與時(shí)間相互獨(dú)立。
5.小結(jié)
當(dāng)然,實(shí)現(xiàn)生存分析可視化的方法還有很多,比如:SPSS、Graphpad Prism等多種作圖工具,小伙伴們可以依據(jù)自己的愛好自行選擇哦。

發(fā)表評論
請輸入評論內(nèi)容...
請輸入評論/評論長度6~500個(gè)字
圖片新聞
技術(shù)文庫
最新活動(dòng)更多
-
7.30-8.1火熱報(bào)名中>> 全數(shù)會2025(第六屆)機(jī)器人及智能工廠展
-
7月30-31日報(bào)名參會>>> 全數(shù)會2025中國激光產(chǎn)業(yè)高質(zhì)量發(fā)展峰會
-
8月5日立即報(bào)名>> 【在線會議】CAE優(yōu)化設(shè)計(jì):醫(yī)療器械設(shè)計(jì)的應(yīng)用案例與方案解析
-
精彩回顧立即查看>> 【線下論壇】新唐科技2025新品發(fā)布會
-
精彩回顧立即查看>> 【在線會議】研華嵌入式核心優(yōu)勢,以Edge AI驅(qū)動(dòng)機(jī)器視覺升級
-
精彩回顧立即查看>> OFweek 2025(第十四屆)中國機(jī)器人產(chǎn)業(yè)大會
- 1 2025 ADA前瞻:中國創(chuàng)新藥的“破圈”與“突圍”(附摘要匯總)
- 2 起底“神藥”艾本那肽
- 3 中國疫苗,邁入新周期
- 4 250美元的代價(jià):諾和諾德減肥神藥提前痛失專利保護(hù)
- 5 港股創(chuàng)新藥走出至暗時(shí)刻
- 6 腫瘤微環(huán)境在癌癥中的發(fā)展變化
- 7 中國血制品必將出現(xiàn)一個(gè)巨頭
- 8 諾和諾德再掀波瀾:8.12億美元押注口服新藥,劍指下一代減肥療法!
- 9 國產(chǎn)創(chuàng)新藥迎來密集收獲期,這些藥企值得關(guān)注!
- 10 IL-7/IL-7R的生物學(xué)及其靶向治療的研究進(jìn)展