ggplot2-ROC曲线美化

作者: 找兔子的小萝卜 | 来源:发表于2021-02-25 17:13 被阅读0次

    将data整理为这样的表格

    而后使用ggplot2画ROC曲线

    library(ggplot2)
    ggplot() + 
      geom_line(data = dat,aes(x = fpr_min, y = tpr_min),color = "blue",size=3) + 
      geom_line(aes(x=c(0,1),y=c(0,1)),color = "grey",size = 3,linetype=6 )+
      theme_bw()+
      annotate("text",x = .75, y = .25,
               label = paste("AUC of min = ",round(auc_min,2)),color = "blue",size=10)+
      scale_x_continuous(name  = "1-Specificity")+
      scale_y_continuous(name = "Sensitivity")+ 
      theme(plot.title = element_text(hjust = 0.5,size = 24),
            axis.text=element_text(size=24),
            axis.title.x = element_text(size = 24),
            axis.title.y = element_text(size = 24),
            legend.title = element_text(size=24),
            legend.text = element_text(size=18))
    
    

    出来的ROC曲线为,字体很大很清楚。

    image.png

    aes(x = fpr_min, y = tpr_min),color = "blue",size=3)定义X,Y轴的值,及其处理啊的蓝色的线条的颜色和粗细。
    geom_line(aes(x=c(0,1),y=c(0,1)),color = "grey",size = 3,linetype=6 )定义灰色的对角线的颜色,粗细及其线条类型,linetype有1~6个类型,选择自己觉得合适的就行。
    theme_bw()+annotate("text",x = .75, y = .25, label = paste("AUC of min = ",round(auc_min,2)),color = "blue",size=10)分面之后加标注,就是显示ROC曲线下面积,x = .75, y = .25定义显示位置,label = paste("AUC of min = ",round(auc_min,2))定义显示内容,随后时颜色与字体大小。

    随后剩下的代码就是定义X,Y轴的标签,及其显示坐标数字,的大小颜色等,hjust = 0.5时居中。

    scale_x_continuous(name  = "1-Specificity")+
      scale_y_continuous(name = "Sensitivity")+ 
      theme(plot.title = element_text(hjust = 0.5,size = 24),
            axis.text=element_text(size=24),
            axis.title.x = element_text(size = 24),
            axis.title.y = element_text(size = 24),
            legend.title = element_text(size=24),
            legend.text = element_text(size=18))
    

    相关文章

      网友评论

        本文标题:ggplot2-ROC曲线美化

        本文链接:https://www.haomeiwen.com/subject/qaeufltx.html