在 R 中的 roc 图上按组添加 AUC

add AUC by group on roc plots in R

我有 4 个组的 roc 图,我想在图例中为每个组添加 auc 值:

## draw plots
basicplot <- ggplot(roc_long, aes(d = outcome, m = prediction, color = model)) + geom_roc(n.cuts = 0) + 
+   style_roc(theme = theme_bw, xlab = "1-Specificity", ylab = "Sensitivity") 
## calculate auc
calc_auc(basicplot)
      PANEL group       AUC
    1     1     1 0.7718926
    2     1     2 0.9296029
    3     1     3 0.7790979
    4     1     4 0.8235286

annotate <- basicplot + 
     ggtitle("ROC plots for 4 outcomes") +
     theme(plot.title = element_text(hjust = 0.5)) +
     annotate("text", x = .75, y = .25, label = paste("AUC =", round(calc_auc(basicplot)["AUC"], 3)))

     annotate

我的情节是这样的: 如何将AUC添加到右侧的每个组?

谢谢!

您可以使用 round(calc_auc(basicplot)[["AUC"]][1/2/3/4] 提取 calc_auc(basicplot) 中的特定单元格,并将它们包装在一个新句子中。此外,您可能需要 \n 将长句分成几行。