用R语言做ROC曲线,解决横纵坐标轴重叠的问题

用R语言做ROC曲线,横纵坐标轴不重叠,如下图所示

使用的代码如下:

plot(roc10,  
     print.auc=TRUE, 
     print.auc.x=0.2, print.auc.y=0.6,print.auc.cex=0.7,
     auc.polygon=T,
     auc.polygon.col="white", 
     grid= FALSE, 
     legacy.axes=T) 

以下是解决这种问题的两种方案

方案一:继续使用上述代码。但是plot.roc()函数会自动调整坐标轴范围和标尺,使得曲线和AUC值适应于绘图区域,然后导致横坐标轴和纵坐标轴的间距不同,所以最简单的方法就是调整R Studio右下角展示图片位置的那个框的大小,平时不是占右下1/4大小,调成占1/2大小,它的横坐标轴和纵坐标轴的间距就相同啦(可以自行调节,使横纵坐标轴的间距相同),但是export输出的结果还是不同的,所以可以调整好位置后截图保存。

方案二:更换代码。如下

plot(1-roc1$specificities,roc1$sensitivities,
type="l",col="red",lty=1,xlab = "1-Specificity",
ylab = "Sensitivities",lwd=2)

plot函数是手动设置的横纵坐标轴标签,所以间距是相同的,这种方法的输出结果间距也是相同的,不用截图保存。

希望这个回答可以帮助到你。

如果有疑问可以评论或私信。

共同学习,共同进步

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值