faced_wrap 在 R 中使用 pROC 包绘图(几个变量)

faced_wrap plot with pROC package in R (several variables)

我有三个自变量和一个二元结果变量。我正在使用 pROC 包进行分析,并希望将所有三个 ROC 图并排显示,类似于 face_wrap 功能。例如,使用下面的代码,

library(pROC)
data(aSAH)
roc_i <- roc(aSAH$outcome,
             aSAH$s100b,
             legacy.axes=TRUE,
             ci=TRUE, 
             boot.n=2000, 
             ci.alpha=0.9, 
             stratified=TRUE,
             plot=TRUE, 
             auc.polygon=TRUE, 
             max.auc.polygon=TRUE, 
             grid=TRUE,
             print.auc=TRUE, 
             print.thres='best', 
             print.thres.best.method='y',
             print.thres.adj=c(-0.05, 1.25),#,c(-0.05, 2.0),c(-0.05, 5.0)),
             print.thres.pattern="Cut-off: %.3f \n\nSp: %.3f \nSe: %.3f",
             print.thres.pattern.cex = 1.5,
             print.auc.cex = 1.5,
             print.auc.y=0.2,
             print.auc.x=0.8,
             cex.axis=1.5,
             cex.lab=1.5,
             print.thres.pch=16,
             print.thres.cex=2.0,
             cex.main=1.5)

我可以为单个自变量生成一张图片 s100b,而我还需要两张图片(用于其他 ind.Var 2 和 ind.Var 3)并彼此相邻绘制,就像这样示例:

您尝试过使用 ggroc function of pROC 吗?

library(ggplot2)
library(pROC)

data(aSAH)
roc.list <- roc(outcome ~ s100b + ndka + wfns, data = aSAH)

g <- ggroc(roc.list)
g

g + facet_grid(.~name) + theme(legend.position="none")

不过您仍然需要手动添加额外信息。